Surgical robot platform

ABSTRACT

A medical robot system, including a robot coupled to an effectuator element with the robot configured for controlled movement and positioning. The system may include a transmitter configured to emit one or more signals, and the transmitter is coupled to an instrument coupled to the effectuator element. The system may further include a motor assembly coupled to the robot and a plurality of receivers configured to receive the one or more signals emitted by the transmitter. A control unit is coupled to the motor assembly and the plurality of receivers, and the control unit is configured to supply one or more instruction signals to the motor assembly. The instruction signals can be configured to cause the motor assembly to selectively move the effectuator element.

RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 15/697,943, filed on Sep. 7, 2017 (published asU.S. Patent Publication No. 2017-0360517), which is a continuationapplication of U.S. patent application Ser. No. 15/609,305 filed on May31, 2017 (published as U.S. Patent Publication No. 2017-0281145), whichis a continuation application of U.S. patent application Ser. No.13/924,505 filed on Jun. 21, 2013 (issued as U.S. Pat. No. 9,782,229),all of which are incorporated herein by reference in their entirety forall purposes. Application Ser. No. 13/924,505 claims priority to U.S.Provisional Pat. App. No. 61/662,702 filed Jun. 21, 2012 (expired) andU.S. Provisional Pat. App. No. 61/800,527 filed Mar. 15, 2013 (expired),which are incorporated herein by reference in their entirety for allpurposes.

In addition, this application is a continuation application of U.S.patent application Ser. No. 16/111,559, filed on Aug. 24, 2018, which isa continuation application of U.S. patent application Ser. No.14/729,096, filed on Jun. 3, 2015 (issued as U.S. Pat. No. 10,172,678),which is a continuation application of U.S. patent application Ser. No.13/542,560 filed on Jul. 5, 2012 (issued as U.S. Pat. No. 9,078,685),which is a continuation application of U.S. patent application Ser. No.11/845,557, filed on Aug. 27, 2007 (issued as U.S. Pat. No. 8,219,178),which is a continuation in part application of U.S. patent applicationSer. No. 11/838,027, filed on Aug. 13, 2007 (issued as U.S. Pat. No.8,219,177), which is a continuation in part application of U.S. patentapplication Ser. No. 11/676,023, filed on Feb. 16, 2007 (issued as U.S.Pat. No. 8,010,181), all of which are incorporated herein by referencein their entirety for all purposes. Application Ser. No. 11/676,023claims priority to U.S. Provisional Pat. App. No. 60/775,816 filed onFeb. 16, 2006 (expired) and claims priority to U.S. Provisional Pat.App. No. 60/774,586 filed on Feb. 16, 2006 (expired), which areincorporated herein by reference in their entirety for all purposes.

BACKGROUND

Various medical procedures require the precise localization of athree-dimensional position of a surgical instrument within the body inorder to effect optimized treatment. Limited robotic assistance forsurgical procedures is currently available. One of the characteristicsof many of the current robots used in surgical applications which makethem error prone is that they use an articular arm based on a series ofrotational joints. The use of an articular system may createdifficulties in arriving at an accurately targeted location because thelevel of any error is increased over each joint in the articular system.

SUMMARY

Some embodiments of the invention provide a surgical robot (andoptionally an imaging system) that utilizes a Cartesian positioningsystem that allows movement of a surgical instrument to be individuallycontrolled in an x-axis, y-axis and z-axis. In some embodiments, thesurgical robot can include a base, a robot arm coupled to and configuredfor articulation relative to the base, as well as an end-effectuatorcoupled to a distal end of the robot arm. The effectuator element caninclude the surgical instrument or can be configured for operativecoupling to the surgical instrument. Some embodiments of the inventionallow the roll, pitch and yaw rotation of the end-effectuator and/orsurgical instrument to be controlled without creating movement along thex-axis, y-axis, or z-axis.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a partial perspective view of a room in which a medicalprocedure is taking place by using a surgical robot.

FIG. 2 is a perspective view of a surgical robot according to anembodiment of the invention.

FIGS. 3A-3B are perspective views of the surgical robot illustrated inFIG. 2, which show the movement of the base of the surgical robot in thez-axis direction in accordance with an embodiment of the invention.

FIG. 4 is a partial perspective view of the surgical robot of FIG. 2which shows how the robot arm can be moved in the x-axis direction.

FIGS. 5A-5B are partial perspective views of the surgical robot of FIG.2, which show how the robot arm can be moved in the y-axis direction.

FIG. 6 is a perspective view of a portion of the robot arm of FIG. 2showing how an effectuator element can be twisted about a y-axis.

FIG. 7 is a perspective view of a portion of a robot arm of FIG. 2showing how an effectuator element can be pivoted about a pivot axisthat is perpendicular to the y-axis.

FIGS. 8A-8B are partial perspective views of the surgical robot of FIG.2, which show the movement of a surgical instrument 35 along the z-axisfrom an effectuator element.

FIG. 9 is a system diagram which shows local positioning sensors, acontrolling PC, and a Radiofrequency (RF) transmitter in accordance withan embodiment of the invention.

FIG. 10 is a system diagram of the controlling PC, user input, andmotors for controlling the robot in accordance with an embodiment of theinvention.

FIG. 11 is a flow chart diagram for general operation of a surgicalrobot in accordance with one embodiment of the invention.

FIG. 12 is a flow chart diagram for a closed screw/needle insertionperformed using a surgical robot in accordance with one embodiment ofthe invention.

FIG. 13 is a flow chart diagram of a safe zone surgery performed using asurgical robot as described herein in accordance with one embodiment ofthe invention.

FIG. 14 is a flow chart diagram of a flexible catheter insertionprocedure performed using a surgical robot as described herein inaccordance with one embodiment of the invention.

FIG. 15A shows a screenshot of a monitor display showing a set up of theanatomy in X, Y and Z views in accordance with one embodiment of theinvention.

FIG. 15B shows a screenshot of a monitor display showing what the userviews during an invasive procedure in accordance with one embodiment ofthe invention.

FIG. 16 depicts a surgical robot having a plurality of optical markersmounted for tracking movement in an x-direction in accordance with oneembodiment of the invention.

FIGS. 17A-17B depict surgical instruments having a stop mechanism inaccordance with one embodiment of the invention.

FIGS. 17C-17E illustrate tools for manually adjusting a drill stop withreference to drill bit markings in accordance with one embodiment of theinvention.

FIGS. 17F-17J illustrate tools for locking and holding a drill bit in aset position in accordance with one embodiment of the invention.

FIGS. 18A-18B depicts an end-effectuator having a clearance mechanism inaccordance with one embodiment of the invention.

FIG. 19A-19B depicts an end-effectuator having an attachment element forapplying distraction and/or compression forces in accordance with oneembodiment of the invention.

FIGS. 20A-20E show the use of calibration frames with the guidancesystem in accordance with one embodiment of the invention.

FIG. 21A depicts flexible roll configurations of a targeting fixture inaccordance with one embodiment of the invention.

FIG. 21B shows possible positions of markers along a line in space inaccordance with one embodiment of the invention.

FIG. 21C depicts flexible roll configurations of a targeting fixture inaccordance with one embodiment of the invention.

FIG. 21D shows a fixture that can be employed to provide desiredstiffness to the unrolled fixture such that it maintains its positionafter unrolling occurs in accordance with one embodiment of theinvention.

FIGS. 22A-22D depict a targeting fixture and method configured forapplication to the skull of a patient in accordance with one embodimentof the invention.

FIG. 23 depicts a dynamic tracking device mounted to the spinous processof the lumbar spine of a patient in accordance with one embodiment ofthe invention.

FIGS. 24-27 illustrate methods for the robot in accordance with oneembodiment of the invention.

FIGS. 28A-28B illustrate methods for calculating position and/ororientation of an end-effectuator for the robot in accordance with oneembodiment of the invention.

FIGS. 29-33 illustrate methods for the robot in accordance with otherembodiments of the invention.

FIG. 34 illustrates a computing platform that enables implementation ofvarious embodiments of the invention.

FIGS. 35A-35B display a surgical robot in accordance with one embodimentof the invention.

DETAILED DESCRIPTION

Referring now to FIGS. 1 and 35A, some embodiments include a surgicalrobot system 1 is disclosed in a room 10 where a medical procedure isoccurring. In some embodiments, the surgical robot system 1 can comprisea surgical robot 15 and one or more positioning sensors 12. In thisaspect, the surgical robot 15 can comprise a display means 29 (includingfor example a display 150 shown in FIG. 10), and a housing 27. In someembodiments a display 150 can be attached to the surgical robot 15,whereas in other embodiments, a display means 29 can be detached fromsurgical robot 15, either within surgical room 10 or in a remotelocation. In some embodiments, the housing 27 can comprise a robot arm23, and an end-effectuator 30 coupled to the robot arm 23 controlled byat least one motor 160. For example, in some embodiments, the surgicalrobot system 1 can include a motor assembly 155 comprising at least onemotor (represented as 160 in FIG. 10). In some embodiments, theend-effectuator 30 can comprise a surgical instrument 35. In otherembodiments, the end-effectuator 30 can be coupled to the surgicalinstrument 35. As used herein, the term “end-effectuator” is usedinterchangeably with the terms “end-effectuator,” “effectuator element,”and “effectuator element.” In some embodiments, the end-effectuator 30can comprise any known structure for effecting the movement of thesurgical instrument 35 in a desired manner.

In some embodiments, prior to performance of an invasive procedure, athree-dimensional (“3D”) image scan can be taken of a desired surgicalarea of the patient 18 and sent to a computer platform in communicationwith surgical robot 15 as described herein (see for example the platform3400 including the computing device 3401 shown in FIG. 34). In someembodiments, a physician can then program a desired point of insertionand trajectory for surgical instrument 35 to reach a desired anatomicaltarget within or upon the body of patient 18. In some embodiments, thedesired point of insertion and trajectory can be planned on the 3D imagescan, which in some embodiments, can be displayed on display means 29.In some embodiments, a physician can plan the trajectory and desiredinsertion point (if any) on a computed tomography scan (hereinafterreferred to as “CT scan”) of a patient 18. In some embodiments, the CTscan can be an isocentric C-arm type scan, an O-arm type scan, orintraoperative CT scan as is known in the art. However, in someembodiments, any known 3D image scan can be used in accordance with theembodiments of the invention described herein.

In some embodiments, the surgical robot system 1 can comprise a localpositioning system (“LPS”) subassembly to track the position of surgicalinstrument 35. The LPS subassembly can comprise at least oneradio-frequency (RF) transmitter 120 that is coupled were affixed to theend-effectuator 30 or the surgical instrument 35 at a desired location.In some embodiments, the at least one RF transmitter 120 can comprise aplurality of transmitters 120, such as, for example, at least three RFtransmitters 120. In another embodiment, the LPS subassembly cancomprise at least one RF receiver 110 configured to receive one or moreRF signals produced by the at least one RF transmitter 120. In someembodiments, the at least one RF receiver 110 can comprise a pluralityof RF receivers 110, such as, for example, at least three RF receivers110. In these embodiments, the RF receivers 110 can be positioned atknown locations within the room 10 where the medical procedure is totake place. In some embodiments, the RF receivers 110 can be positionedat known locations within the room 10 such that the RF receivers 110 arenot coplanar within a plane that is parallel to the floor of the room10.

In some embodiments, during use, the time of flight of an RF signal fromeach RF transmitter 120 of the at least one RF transmitter 120 to eachRF receiver 110 of the at least one RF receiver 110 (e.g., one RFreceiver, two RF receivers, three RF receivers, etc.) can be measured tocalculate the position of each RF transmitter 120. Because the velocityof the RF signal is known, the time of flight measurements result in atleast three distance measurements for each RF transmitter 120 (one toeach RF receiver 110).

In some embodiments, the surgical robot system 1 can comprise a controldevice (for example a computer 100 having a processor and a memorycoupled to the processor). In some embodiments, the processor of thecontrol device 100 can be configured to perform time of flightcalculations as described herein. Further, in some embodiments, can beconfigured to provide a geometrical description of the location of theat least one RF transmitter 120 with respect to an operative end of thesurgical instrument 35 or end-effectuator 30 that is utilized to performor assist in performing an invasive procedure. In some furtherembodiments, the position of the RF transmitter 120, as well as thedimensional profile of the surgical instrument 35 or the effectuatorelement 30 can be displayed on a monitor (for example on a display means29 such as the display 150 shown in FIG. 10). In one embodiment, theend-effectuator 30 can be a tubular element (for example a guide tube50) that is positioned at a desired location with respect to, forexample, a patient's 18 spine to facilitate the performance of a spinalsurgery. In some embodiments, the guide tube 50 can be aligned with thez axis 70 defined by a corresponding robot motor 160 or, for example,can be disposed at a selected angle relative to the z-axis 70. In eithercase, the processor of the control device (i.e. the computer 100) can beconfigured to account for the orientation of the tubular element and theposition of the RF transmitter 120. As further described herein, in someembodiments, the memory of the control device (computer 100 for example)can store software for performing the calculations and/or analysesrequired to perform many of the surgical method steps set forth herein.

Another embodiment of the disclosed surgical robot system 1 involves theutilization of a robot 15 that is capable of moving the end-effectuator30 along x-, y-, and z-axes (see 66, 68, 70 in FIG. 35B). In thisembodiment, the x-axis 66 can be orthogonal to the y-axis 68 and z-axis70, the y-axis 68 can be orthogonal to the x-axis 66 and z-axis 70, andthe z-axis 70 can be orthogonal to the x-axis 66 and the y-axis 68. Insome embodiments, the robot 15 can be configured to effect movement ofthe end-effectuator 30 along one axis independently of the other axes.For example, in some embodiments, the robot 15 can cause theend-effectuator 30 to move a given distance along the x-axis 66 withoutcausing any significant movement of the end-effectuator 30 along they-axis 68 or z-axis 70.

In some further embodiments, the end-effectuator 30 can be configuredfor selective rotation about one or more of the x-axis 66, y-axis 68,and z-axis 70 (such that one or more of the Cardanic Euler Angles (e.g.,roll, pitch, and/or yaw) associated with the end-effectuator 30 can beselectively controlled). In some embodiments, during operation, theend-effectuator 30 and/or surgical instrument 35 can be aligned with aselected orientation axis (labeled “Z Tube” in FIG. 35B) that can beselectively varied and monitored by an agent (for example computer 100and platform 3400) that can operate the surgical robot system 1. In someembodiments, selective control of the axial rotation and orientation ofthe end-effectuator 30 can permit performance of medical procedures withsignificantly improved accuracy compared to conventional robots thatutilize, for example, a six degree of freedom robot arm 23 comprisingonly rotational axes.

In some embodiments, as shown in FIG. 1, the robot arm 23 that can bepositioned above the body of the patient 18, with the end-effectuator 30selectively angled relative to the z-axis toward the body of the patient18. In this aspect, in some embodiments, the robotic surgical system 1can comprise systems for stabilizing the robotic arm 23, theend-effectuator 30, and/or the surgical instrument 35 at theirrespective positions in the event of power failure. In some embodiments,the robotic arm 23, end-effectuator 30, and/or surgical instrument 35can comprise a conventional worm-drive mechanism (not shown) coupled tothe robotic arm 23, configured to effect movement of the robotic armalong the z-axis 70. In some embodiments, the system for stabilizing therobotic arm 23, end-effectuator 30, and/or surgical instrument 35 cancomprise a counterbalance coupled to the robotic arm 23. In anotherembodiment, the means for maintaining the robotic arm 23,end-effectuator 30, and/or surgical instrument 35 can comprise aconventional brake mechanism (not shown) that is coupled to at least aportion of the robotic arm 23, such as, for example, the end-effectuator30, and that is configured for activation in response to a loss of poweror “power off” condition of the surgical robot 15.

Referring to FIG. 1, in some embodiments, the surgical robot system 1can comprise a plurality of positioning sensors 12 configured to receiveRF signals from the at least one conventional RF transmitter (not shown)located within room 10. In some embodiments, the at least one RFtransmitter 120 can be disposed on various points on the surgical robot15 and/or on patient 18. For example, in some embodiments, the at leastone RF transmitter 120 can be attached to one or more of the housing 27,robot arm 23, end-effectuator 30, and surgical instrument 35. Someembodiments include positioning sensors 12 that in some embodimentscomprise RF receivers 110. In some embodiments, RF receivers 110 are incommunication with a computer platform as described herein (see forexample 3400 comprising a computing device 3401 FIG. 34) that receivesthe signal from the RF transmitters 120. In some embodiments, eachtransmitter 120 of the at least one RF transmitter 120 can transmit RFenergy on a different frequency so that the identity of each transmitter120 in the room 10 can be determined. In some embodiments, the locationof the at least one RF transmitter 120, and, consequently, the objectsto which the transmitters 120 are attached, are calculated by thecomputer (e.g., computing device 3401 in FIG. 34) using time-of-flightprocesses.

In some embodiments, the computer (not shown in FIG. 1) is also incommunication with surgical robot 15. In some embodiments, aconventional processor (not shown) of the computer 100 of the computingdevice 3401 can be configured to effect movement of the surgical robot15 according to a preplanned trajectory selected prior to the procedure.For example, in some embodiments, the computer 100 of the computingdevice 3401 can use robotic guidance software 3406 and robotic guidancedata storage 3407 (shown in FIG. 34) to effect movement of the surgicalrobot 15.

In some embodiments, the position of surgical instrument 35 can bedynamically updated so that surgical robot 15 is aware of the locationof surgical instrument 35 at all times during the procedure.Consequently, in some embodiments, the surgical robot 15 can move thesurgical instrument 35 to the desired position quickly, with minimaldamage to patient 18, and without any further assistance from aphysician (unless the physician so desires). In some furtherembodiments, the surgical robot 15 can be configured to correct the pathof surgical instrument 35 if the surgical instrument 35 strays from theselected, preplanned trajectory.

In some embodiments, the surgical robot 15 can be configured to permitstoppage, modification, and/or manual control of the movement of theend-effectuator 30 and/or surgical instrument 35. Thus, in use, in someembodiments, an agent (e.g., a physician or other user) that can operatethe system 1 has the option to stop, modify, or manually control theautonomous movement of end-effectuator 30 and/or surgical instrument 35.Further, in some embodiments, tolerance controls can be preprogrammedinto the surgical robot 15 and/or processor of the computer platform3400 (such that the movement of the end-effectuator 30 and/or surgicalinstrument 35 is adjusted in response to specified conditions beingmet). For example, in some embodiments, if the surgical robot 15 cannotdetect the position of surgical instrument 35 because of a malfunctionin the at least one RF transmitter 120, then the surgical robot 15 canbe configured to stop movement of end-effectuator 30 and/or surgicalinstrument 35. In some embodiments, if surgical robot 15 detects aresistance, such as a force resistance or a torque resistance above atolerance level, then the surgical robot 15 can be configured to stopmovement of end-effectuator 30 and/or surgical instrument 35.

In some embodiments, the computer 100 for use in the system (for examplerepresented by computing device 3401), as further described herein, canbe located within surgical robot 15, or, alternatively, in anotherlocation within surgical room 10 or in a remote location. In someembodiments, the computer 100 can be positioned in operativecommunication with positioning sensors 12 and surgical robot 15.

In some further embodiments, the surgical robot 15 can also be used withexisting conventional guidance systems. Thus, alternative conventionalguidance systems beyond those specifically disclosed herein are withinthe scope and spirit of the invention. For instance, a conventionaloptical tracking system 3417 for tracking the location of the surgicaldevice, or a commercially available infrared optical tracking system3417, such as Optotrak® (Optotrak® is a registered trademark of NorthernDigital Inc. Northern Digital, Waterloo, Ontario, Canada), can be usedto track the patient 18 movement and the robot's base 25 location and/orintermediate axis location, and used with the surgical robot system 1.In some embodiments in which the surgical robot system 1 comprises aconventional infrared optical tracking system 3417, the surgical robotsystem 1 can comprise conventional optical markers attached to selectedlocations on the end-effectuator 30 and/or the surgical instrument 35that are configured to emit or reflect light. In some embodiments, thelight emitted from and/or reflected by the markers can be read bycameras and/or optical sensors and the location of the object can becalculated through triangulation methods (such asstereo-photogrammetry).

Referring now to FIG. 2, it is seen that, in some embodiments, thesurgical robot 15 can comprise a base 25 connected to wheels 31. Thesize and mobility of these embodiments can enable the surgical robot tobe readily moved from patient to patient and room to room as desired. Asshown, in some embodiments, the surgical robot 15 can further comprise acase 40 that is slidably attached to base 25 such that the case 40 canslide up and down along the z-axis 70 substantially perpendicular to thesurface on which base 25 sits. In some embodiments, the surgical robot15 can include a display means 29, and a housing 27 which contains robotarm 23.

As described earlier, the end-effectuator 30 can comprise a surgicalinstrument 35, whereas in other embodiments, the end-effectuator 30 canbe coupled to the surgical instrument 35. In some embodiments, it is arm23 can be connected to the end-effectuator 30, with surgical instrument35 being removably attached to the end-effectuator 30.

Referring now to FIGS. 2, 3A-3B, 4, 5A-5B, 6, 7, and 8A-8B, in someembodiments, the effectuator element 30 can include an outer surface 30d, and can comprise a distal end 30 a defining a beveled leading edge 30b and a non-beveled leading edge 30 c. In some embodiments, the surgicalinstrument 35 can be any known conventional instrument, device, hardwarecomponent, and/or attachment that is used during performance of aninvasive or non-invasive medical procedure (including surgical,therapeutic, and diagnostic procedures). For example, and withoutlimitation, in some embodiments, the surgical instrument 35 can beembodied in or can comprise a needle 7405, 7410, a conventional probe, aconventional screw, a conventional drill, a conventional tap, aconventional catheter, a conventional scalpel forceps, or the like. Inaddition or in the alternative, in some embodiments, the surgicalinstrument 35 can be a biological delivery device, such as, for exampleand without limitation, a conventional syringe, which can distributebiologically acting compounds throughout the body of a patient 18. Insome embodiments, the surgical instrument 35 can comprise a guide tube50 (also referred to herein as a “Z-tube 50”) that defines a centralbore configured for receipt of one or more additional surgicalinstruments 35.

In some embodiments, the surgical robot 15 is moveable in a plurality ofaxes (for instance x-axis 66, y-axis 68, and z-axis 70) in order toimprove the ability to accurately and precisely reach a target location.Some embodiments include a robot 15 that moves on a Cartesianpositioning system; that is, movements in different axes can occurrelatively independently of one another instead of at the end of aseries of joints.

Referring now to FIGS. 3A and 3B, the movement of case 40 relative tobase 25 of surgical robot 15 is represented as a change of height of thesystem 1 and the position of the case 40 with respect to the base 25. Asillustrated, in some embodiments, case 40 can be configured to be raisedand lowered relative to the base 25 along the z-axis. Some embodimentsinclude a housing 27 that can be attached to case 40 and be configuredto move in the z-direction (defined by z-frame 72) with case 40 whencase 40 is raised and lowered. Consequently, in some embodiments, arm23, the end-effectuator 30, and surgical instrument 35 can be configuredto move with case 40 as case 40 is raised and lowered relative to base25.

In a further embodiment, referring now to FIG. 4, housing 27 can beslidably attached to case 40 so that it can extend and retract along thex-axis 66 relative to case 40 and substantially perpendicularly to thedirection case 40 moves relative to base 25. Consequently, in someembodiments, the robot arm 23, the end-effectuator 30, and surgicalinstrument 35 can be configured to move with housing 27 as housing 27 isextended and retracted relative to case 40.

Referring now to FIGS. 5A and 5B, the extension of arm 23 along they-axis 68 is shown. In some embodiments, robot arm 23 can be extendablealong the y-axis 68 relative to case 40, base 25, and housing 27.Consequently, in some embodiments, the end-effectuator 30 and surgicalinstrument 35 can be configured to move with arm 23 as arm 23 isextended and retracted relative to housing 27. In some embodiments, arm23 can be attached to a low profile rail system (not shown) which isencased by housing 27.

Referring now to FIGS. 6, 7 and FIGS. 8A-B, the movement of theend-effectuator 30 is shown. FIG. 6 shows an embodiment of anend-effectuator 30 that is configured to rotate about the y-axis 68,performing a rotation having a specific roll 62. FIG. 7 shows anembodiment of an end-effectuator 30 that is configured to rotate aboutthe x-axis 66, performing a rotation having a specific pitch 60. FIG. 8shows an embodiment of an end-effectuator 30 that is configured to raiseand lower surgical instrument 35 along a substantially vertical axis,which can be a secondary movable axis 64, referred to as “Z-tube axis64”. In some embodiments, the orientation of the guide tube 50 can beinitially aligned with z-axis 70, but such orientation can change inresponse to changes in roll 62 and/or pitch 60.

FIG. 9 shows a system diagram of the 3D positioning sensors 110,computer 100, and RF transmitters 120 in accordance with someembodiments of the invention is provided. As shown, computer 100 is incommunication with positioning sensors 110. In some embodiments, duringoperation, RF transmitters 120 are attached to various points on thesurgical robot 15. In some embodiments, the RF transmitters 120 can alsobe attached to various points on or around an anatomical target of apatient 18. In some embodiments, computer 100 can be configured to senda signal to the RF transmitters 120, prompting the RF transmitters 120to transmit RF signals that are read by the positioning sensors 110. Insome embodiments, the computer 100 can be coupled to the RF transmitters120 using any conventional communication means, whether wired orwireless. In some embodiments, the positioning sensors 110 can be incommunication with computer 100, which can be configured to calculatethe location of the positions of all the RF transmitters 120 based ontime-of-flight information received from the positioning sensors 110. Insome embodiments, computer 100 can be configured to dynamically updatethe calculated location of the surgical instrument 35 and/orend-effectuator 30 being used in the procedure, which can be displayedto the agent.

Some embodiments can include a system diagram of surgical robot system 1having a computer 100, a display means 29 comprising a display 150, userinput 170, and motors 160, provided as illustrated in FIG. 10. In someembodiments, motors 160 can be installed in the surgical robot 15 andcontrol the movement of the end-effectuator 30 and/or surgicalinstrument 35 as described above. In some embodiments, computer 100 canbe configured to dynamically update the location of the surgicalinstrument 35 being used in the procedure, and can be configured to sendappropriate signals to the motors 160 such that the surgical robot 15has a corresponding response to the information received by computer100. For example, in some embodiments, in response to informationreceived by computer 100, the computer 100 can be configured to promptthe motors 160 to move the surgical instrument 35 along a preplannedtrajectory.

In some embodiments, prior to performance of a medical procedure, suchas, for example, an invasive surgical procedure, user input 170 can beused to plan the trajectory for a desired navigation. After the medicalprocedure has commenced, if changes in the trajectory and/or movement ofthe end-effectuator 30 and/or surgical instrument 35 are desired, a usercan use the user input 170 to input the desired changes, and thecomputer 100 can be configured to transmit corresponding signals to themotors 160 in response to the user input 170.

In some embodiments, the motors 160 can be or can comprise conventionalpulse motors. In this aspect, in some embodiments, the pulse motors canbe in a conventional direct drive configuration or a belt drive andpulley combination attached to the surgical instrument 35.Alternatively, in other embodiments, the motors 160 can be conventionalpulse motors that are attached to a conventional belt driverack-and-pinion system or equivalent conventional power transmissioncomponent.

In some embodiments, the use of conventional linear pulse motors withinthe surgical robot 15 can permit establishment of a non-rigid positionfor the end-effectuator 30 and/or surgical instrument 35. Thus, in someembodiments, the end-effectuator 30 and/or surgical instrument 35 willnot be fixed in a completely rigid position, but rather theend-effectuator 30 and/or the surgical instrument 35 can be configuredsuch that an agent (e.g., a surgeon or other user) can overcome thex-axis 66 and y-axis 68, and force the end-effectuator 30 and/orsurgical instrument 35 from its current position. For example, in someembodiments, the amount of force necessary to overcome such axes can beadjusted and configured automatically or by an agent. In someembodiments, the surgical robot 15 can comprise circuitry configured tomonitor one or more of: (a) the position of the robot arm 23, theend-effectuator 30, and/or the surgical instrument 35 along the x-axis66, y-axis 68, and z-axis 70; (b) the rotational position (e.g., roll 62and pitch 60) of the robot arm 23, the end-effectuator 30, and/or thesurgical instrument 35 relative to the x-(66), y-(68), and z-(70) axes;and (c) the position of the end-effectuator 30, and/or the surgicalinstrument 35 along the travel of the re-orientable axis that isparallel at all times to the end-effectuator 30 and surgical instrument35 (the Z-tube axis 64).

In one embodiment, circuitry for monitoring the positions of the x-axis66, y-axis 68, z-axis 70, Z-tube axis 64, roll 62, and/or pitch 60 cancomprise relative or absolute conventional encoder units (also referredto as encoders) embedded within or functionally coupled to conventionalactuators and/or bearings of at least one of the motors 160. Optionally,in some embodiments, the circuitry of the surgical robot 15 can beconfigured to provide auditory, visual, and/or tactile feedback to thesurgeon or other user when the desired amount of positional tolerance(e.g., rotational tolerance, translational tolerance, a combinationthereof, or the like) for the trajectory has been exceeded. In someembodiments, the positional tolerance can be configurable and defined,for example, in units of degrees and/or millimeters.

In some embodiments, the robot 15 moves into a selected position, readyfor the surgeon to deliver a selected surgical instrument 35, such as,for example and without limitation, a conventional screw, a biopsyneedle 8110, and the like. In some embodiments, as the surgeon works, ifthe surgeon inadvertently forces the end-effectuator 30 and/or surgicalinstrument 35 off of the desired trajectory, then the system 1 can beconfigured to provide an audible warning and/or a visual warning. Forexample, in some embodiments, the system 1 can produce audible beepsand/or display a warning message on the display means 29, such as“Warning: Off Trajectory,” while also displaying the axes for which anacceptable tolerance has been exceeded.

In some embodiments, in addition to, or in place of the audible warning,a light illumination may be directed to the end-effectuator 30, theguide tube 50, the operation area (i.e. the surgical field 17) of thepatient 18, or a combination of these regions. For example, someembodiments include at least one visual indication 900 capable ofilluminating a surgical field 17 of a patient 18. Some embodimentsinclude at least one visual indication 900 capable of indicating atarget lock by projecting an illumination on a surgical field 17. Insome embodiments, the system 1 can provide feedback to the userregarding whether the robot 15 is locked on target. In some otherembodiments, the system 1 can provide an alert to the user regardingwhether at least one marker 720 is blocked, or whether the system 1 isactively seeking one or more markers 720.

In some embodiments, the visual indication 900 can be projected by oneor more conventional light emitting diodes mounted on or near the robotend-effectuator 30. In some embodiments, the visual indication cancomprise lights projected on the surgical field 17 including a colorindicative of the current situation. In some embodiments, a greenprojected light could represent a locked-on-target situation, whereas insome embodiments, a red illumination could indicate a trajectory error,or obscured markers 720. In some other embodiments, a yellowillumination could indicate the system 1 is actively seeking one or moremarkers 720.

In some embodiments, if the surgeon attempts to exceed the acceptabletolerances, the robot 15 can be configured to provide mechanicalresistance (“push back” or haptic feedback) to the movement of theend-effectuator 30 and/or surgical instrument 35 in this manner, therebypromoting movement of the end-effectuator 30 and/or surgical instrument35 back to the correct, selected orientation. In some embodiments, whenthe surgeon then begins to correct the improper position, the robot 15can be configured to substantially immediately return theend-effectuator 30 and/or surgical instrument 35 back to the desiredtrajectory, at which time the audible and visual warnings and alerts canbe configured to cease. For example, in some embodiments, the visualwarning could include a visual indication 900 that may include a greenlight if no tolerances have been exceeded, or a red light if tolerancesare about to, or have been exceeded.

As one will appreciate, a conventional worm-drive system would beabsolutely rigid, and a robot 15 having such a worm-drive system wouldbe unable to be passively moved (without breaking the robot 15) nomatter how hard the surgeon pushed. Furthermore, a completely rigidarticulation system can be inherently unsafe to a patient 18. Forexample, if such a robot 15 were moving toward the patient 18 andinadvertently collided with tissues, then these tissues could bedamaged. Although conventional sensors can be placed on the surface ofsuch a robot 15 to compensate for these risks, such sensors can addconsiderable complexity to the overall system 1 and would be difficultto operate in a fail-safe mode. In contrast, during use of the robot 15described herein, if the end-effectuator 30 and/or surgical instrument35 inadvertently collides with tissues of the patient 18, a collisionwould occur with a more tolerable force that would be unlikely to damagesuch tissues. Additionally, in some embodiments, auditory and/or visualfeedback as described above can be provided to indicate an increase inthe current required to overcome the obstacle. Furthermore, in someembodiments, the end-effectuator 30 of the robot 15 can be configured todisplace itself (move away) from the inadvertently contacted tissue if athreshold required motor 160 current is encountered. In someembodiments, this threshold could be configured (by a control component,for example) for each axis such that the moderate forces associated withengagement between the tissue and the end-effectuator 30 can berecognized and/or avoided.

In some embodiments, the amount of rigidity associated with thepositioning and orientation of the end-effectuator 30 and/or thesurgical instrument 35 can be selectively varied. For example, in someembodiments, the robot 15 can be configured to shift between ahigh-rigidity mode and a low-rigidity mode. In some embodiments, therobot 15 can be programmed so that it automatically shifts to thelow-rigidity mode as the end-effectuator 30 and surgical instrument 35are shifted from one trajectory to another, from a starting position asthey approach a target trajectory and/or target position. Moreover, insome embodiment, once the end-effectuator 30 and/or surgical instrument35 is within a selected distance of the target trajectory and/or targetposition, such as, for example, within about 1° and about 1 mm of thetarget, the robot 15 can be configured to shift to the high-rigiditymode. In some embodiments, this mechanism may improve safety because therobot 15 would be unlikely to cause injury if it inadvertently collidedwith the patient 18 while in the low-rigidity mode.

Some embodiments include a robot 15 that can be configured to effectmovement of the end-effectuator 30 and/or surgical instrument 35 in aselected sequence of distinct movements. In some embodiments, duringmovement of the end-effectuator 30 and/or surgical instrument 35 fromone trajectory to another trajectory, the x-axis 66, y-axis 68, roll 62,and 60 pitch 60 orientations are all changed simultaneously, and thespeed of movement of the end-effectuator 30 can be increased.Consequently, because of the range of positions through which theend-effectuator 30 travels, the likelihood of a collision with thetissue of the patient 18 can also be increased. Hence, in someembodiments, the robot 15 can be configured to effect movement of theend-effectuator 30 and/or surgical instrument 35 such that the positionof the end-effectuator 30 and/or surgical instrument 35 within thex-axis 66 and the y-axis 68 are adjusted before the roll 62 and pitch 60of the end-effectuator 30 and/or surgical instrument 35 are adjusted. Insome alternative embodiments, the robot 15 can be configured to effectmovement of the end-effectuator 30 and/or surgical instrument 35 so thatthe roll 62 and pitch 60 are shifted to 0°. The position of theend-effectuator 30 and/or surgical instrument 35 within the x-axis 66and the y-axis 68 are adjusted, and then the roll 62 and pitch 60 of theend-effectuator 30 and/or surgical instrument 35 are adjusted.

Some embodiments include a robot 15 that can be optionally configured toensure that the end-effectuator 30 and/or surgical instrument 35 aremoved vertically along the z-axis 70 (away from the patient 18) by aselected amount before a change in the position and/or trajectory of theend-effectuator 30 and/or surgical instrument 35 is affected. Forexample, in some embodiments, when an agent (for example, a surgeon orother user, or equipment) changes the trajectory of the end-effectuator30 and/or surgical instrument 35 from a first trajectory to a secondtrajectory, the robot 15 can be configured to vertically displace theend-effectuator 30 and/or surgical instrument 35 from the body of thepatient 18 along the z-axis 70 by the selected amount (while adjustingx-axis 66 and y-axis 68 configurations to remain on the first trajectoryvector, for example), and then effecting the change in position and/ororientation of the end-effectuator 30 and/or surgical instrument 35.This ensures that the end-effectuator 30 and/or surgical instrument 35do not move laterally while embedded within the tissue of the patient18. Optionally, in some embodiments, the robot 15 can be configured toproduce a warning message that seeks confirmation from the agent (forexample, a surgeon or other user, or equipment) that it is safe toproceed with a change in the trajectory of the end-effectuator 30 and/orsurgical instrument 35 without first displacing the end-effectuator 30and/or surgical instrument 35 along the z-axis.

In some embodiments, at least one conventional force sensor (not shown)can be coupled to the end-effectuator 30 and/or surgical instrument 35such that the at least one force sensor receives forces applied alongthe orientation axis (Z-tube axis 64) to the surgical instrument 35. Insome embodiments, the at least one force sensor can be configured toproduce a digital signal. In some embodiments for example, the digitalsignal can be indicative of the force that is applied in the directionof the Z-tube axis 64 to the surgical instrument 35 by the body of thepatient 18 as the surgical instrument 35 advances into the tissue of thepatient 18. In some embodiments, the at least one force sensor can be asmall conventional uniaxial load cell based on a conventional straingauge mechanism. In some embodiments, the uniaxial load cell can becoupled to, for example, analog-to-digital filtering to supply acontinuous digital data stream to the system 1. Optionally, in someembodiments, the at least one force sensor can be configured tosubstantially continuously produce signals indicative of the force thatis currently being applied to the surgical instrument 35. In someembodiments, the surgical instrument 35 can be advanced into the tissueof the patient 18 by lowering the z-axis 70 while the position of theend-effectuator 30 and/or surgical instrument 35 along the x-axis 66 andy-axes 68 is adjusted such that alignment with the selected trajectoryvector is substantially maintained. Furthermore, in some embodiments,the roll 62 and pitch 60 orientations can remain constant or self-adjustduring movement of the x- (66), y- (68), and z-(70) axes such that thesurgical instrument 35 remains oriented along the selected trajectoryvector. In some embodiments, the position of the end-effectuator 30along the z-axis 70 can be locked at a selected mid-range position(spaced a selected distance from the patient 18) as the surgicalinstrument 35 advances into the tissue of the patient 18. In someembodiments, the stiffness of the end-effectuator 30 and/or the surgicalinstrument 35 can be set at a selected level as further describedherein. For example, in some embodiments, the stiffness of the Z-tubeaxis 64 position of the end-effectuator 30 and/or the surgicalinstrument 35 can be coupled to a conventional mechanical lock (notshown) configured to impart desired longitudinal stiffnesscharacteristics to the end-effectuator 30 and/or surgical instrument 35.In some embodiments, if the end-effectuator 30 and/or surgicalinstrument 35 lack sufficient longitudinal stiffness, then thecounterforce applied by the tissue of the patient 18 during penetrationof the surgical instrument 35 can oppose the direction of advancement ofthe surgical instrument 35 such that the surgical instrument 35 cannotadvance along the selected trajectory vector. In other words, as thez-axis 70 advances downwards, the Z-tube axis 64 can be forced up andthere can be no net advancement of the surgical instrument 35. In someembodiments, the at least one force sensor can permit an agent (forexample, a surgeon or other user, or equipment) to determine, (based onsudden increase in the level of applied force monitored by the forcesensor at the end-effectuator 30 and/or the surgical instrument 35),when the surgical instrument 35 has encountered a bone or other specificstructure within the body of the patient 18.

In some alternative embodiments, the orientation angle of theend-effectuator 30 and/or surgical instrument 35 and the x-axis 66 andy-axis 68 can be configured to align the Z-tube axis 64 with the desiredtrajectory vector at a fully retracted Z-tube position, while a z-axis70 position is set in which the distal tip of the surgical instrument 35is poised to enter tissue. In this configuration, in some embodiments,the end-effectuator 30 can be positioned in a manner that theend-effectuator 30 can move, for example, exactly or substantiallyexactly down the trajectory vector if it were advanced only along guidetube 50. In such scenario, in some embodiments, advancing the Z-tubeaxis 64 can cause the guide tube 50 to enter into tissue, and an agent(a surgeon or other user, equipment, etc.) can monitor change in forcefrom the load sensor. Advancement can continue until a sudden increasein applied force is detected at the time the surgical instrument 35contacts bone.

In some embodiments, the robot 15 can be configured to deactivate theone or more motors 160 that advance the Z-tube axis 64 such that theend-effectuator 30 and/or the surgical instrument 35 can move freely inthe Z-tube axis 64 direction while the position of the end-effectuator30 and/or the surgical instrument 35 continues to be monitored. In someembodiments, the surgeon can then push the end-effectuator 30 down alongthe Z-tube axis 64, (which coincides with the desired trajectory vector)by hand. In some embodiments, if the end-effectuator 30 position hasbeen forced out of alignment with the trajectory vector, the position ofthe surgical instrument 35 can be corrected by adjustment along the x-(66) and/or y-(68) axes and/or in the roll 62 and/or pitch 60directions. In some embodiments, when motor 160 associated with theZ-tube 50 movement of the surgical instrument 35 is deactivated, theagent (for example, a surgeon or other user, or equipment) can manuallyforce the surgical instrument 35 to advance until a tactile sense of thesurgical instrument 35 contacts bone, or another known region of thebody).

In some further embodiments, the robotic surgical system 1 can comprisea plurality of conventional tracking markers 720 configured to track themovement of the robot arm 23, the end-effectuator 30, and/or thesurgical instrument 35 in three dimensions. It should be appreciatedthat three dimensional positional information from tracking markers 720can be used in conjunction with the one dimensional linear positionalinformation from absolute or relative conventional linear encoders oneach axis of the robot 15 to maintain a high degree of accuracy. In someembodiments, the plurality of tracking markers 720 can be mounted (orotherwise secured) thereon an outer surface of the robot 15, such as,for example and without limitation, on the base 25 of the robot 15, orthe robot arm 23. In some embodiments, the plurality of tracking markers720 can be configured to track the movement of the robot 15 arm, theend-effectuator 30, and/or the surgical instrument 35. In someembodiments, the computer 100 can utilize the tracking information tocalculate the orientation and coordinates of the distal tip 30 a of thesurgical instrument 35 based on encoder counts along the x-axis 66,y-axis 68, z-axis 70, the Z-tube axis 64, and the roll 62 and pitch 60axes. Further, in some embodiments, the plurality of tracking markers720 can be positioned on the base 25 of the robot 15 spaced from thesurgical field 17 to reduce the likelihood of being obscured by thesurgeon, surgical tools, or other parts of the robot 15. In someembodiments, at least one tracking marker 720 of the plurality oftracking markers 720 can be mounted or otherwise secured to theend-effectuator 30. In some embodiments, the positioning of one or moretracking markers 720 on the end-effectuator 30 can maximize the accuracyof the positional measurements by serving to check or verify theend-effectuator 30 position (calculated from the positional informationfrom the markers on the base 25 of the robot 15 and the encoder countsof the x-(66), y-(68), roll 62, pitch 60, and Z-tube axes 64).

In some further embodiments, at least one optical marker of theplurality of optical tracking markers 720 can be positioned on the robot15 between the base 25 of the robot 15 and the end-effectuator 30instead of, or in addition to, the markers 720 on the base 25 of therobot 15, (see FIG. 16). In some embodiments, the at least one trackingmarker 720 can be mounted to a portion of the robot 15 that effectsmovement of the end-effectuator 30 and/or surgical instrument 35 alongthe x-axis to enable the tracking marker 720 to move along the x-axis 66as the end-effectuator 30 and surgical instrument 35 move along thex-axis 66. The placement of the tracking markers 720 in this way canreduce the likelihood of a surgeon blocking the tracking marker 720 fromthe cameras or detection device, or the tracking marker 720 becoming anobstruction to surgery. In certain embodiments, because of the highaccuracy in calculating the orientation and position of theend-effectuator 30 based on the tracking marker 720 outputs and/orencoder counts from each axis, it can be possible to very accuratelydetermine the position of the end-effectuator 30. For example, in someembodiments, without requiring knowledge of the counts of axis encodersfor the z-axis 70, which is between the x-axis 66 and the base 25,knowing only the position of the markers 720 on the x-axis 66 and thecounts of encoders on the y-(68), roll 62, pitch 60, and Z-tube axes 64can enable computation of the position of the end-effectuator 30. Insome embodiments, the placement of markers 720 on any intermediate axisof the robot 15 can permit the exact position of the end-effectuator 30to be calculated based on location of such markers 720 and counts ofencoders on axes (66, 62, 60, 64) between the markers 720 and theend-effectuator 30. In some embodiments, from the configuration of therobot 15 (see for example, FIG. 2), the order of axes from the base 25to the end-effectuator 30 is z- (70) then x-(66) then y- (68) then roll62 then pitch 60 then Z-tube 64. Therefore, for example, withinembodiments in which tracking markers 720 are placed on the housing 27of the robot 15 that moves with the roll 62 axis, the locations of suchtracking markers 720 and the encoder counts of the pitch 60 and Z-tubeaxes 64 can be sufficient to calculate the end-effectuator 30 position.

In some embodiments, when the surgical instrument 35 is advanced intothe tissue of the patient 18 with the assistance of a guide tube 50, thesurgical instrument 35 can comprise a stop mechanism 52 that isconfigured to prevent the surgical instrument 35 from advancing when itreaches a predetermined amount of protrusion (see for example, FIGS.17A-B). In some embodiments, by knowing the lengths of the guide tube 50and the surgical instrument 35, the distance between the respective endsof the surgical instrument 35, and the location where the stop mechanism52 is attached, it is possible to determine the maximum distance pastthe end of the guide tube 50 that the surgical instrument 35 canprotrude.

In some embodiments, it can be desirable to monitor not just the maximumprotrusion distance of the surgical instrument 35, but also the actualprotrusion distance at any instant during the insertion process.Therefore, in some embodiments, the robot 15 can substantiallycontinuously monitor the protrusion distance, and in some embodiments,the distance can be displayed on a display (such as display means 29).In some embodiments, protrusion distance can be substantiallycontinuously monitored using a spring-loaded plunger 54 including aspring-loaded mechanism 55 a and sensor pad 55 b that has a coupledwiper 56 (see for example FIG. 17B). In some embodiments, the stopmechanism 52 on the surgical instrument 35 can be configured to contactthe spring-loaded mechanism 55 well before it encounters the end of theguide tube 50. In some embodiments, when the wiper 56 moves across theposition sensor pad 55 b, its linear position is sampled, therebypermitting calculation of the distance by which the surgical instrument35 protrudes past the end of the guide tube 50 substantially inreal-time. In some embodiments, any conventional linear encodingmechanism can be used to monitor the plunger's depth of depression andtransmit that information to the computer 100 as further describedherein.

Some embodiments include instruments that enable the stop on a drill bit42 to be manually adjusted with reference to markings 44 on the drillbit 42. For example, FIGS. 17C-17E depict tools for manually adjusting adrill stop 46 with reference to drill bit markings 44 in accordance withone embodiment of the invention. As shown, in some embodiments, thedrill bit 42 can include release mechanisms 48 on each end of the drillstop 46. In some embodiments, if the release 48 on one end of the drillstop 46 is pulled, it is possible to move the drill stop 46 up the shaftof the drill bit 42. In some embodiments, if the release 48 on the otherend of the drill stop 46 is pulled, it is possible to move the drillstop 46 down the shaft (see the direction of movement in FIGS. 17D and17E). In some embodiments, if neither release mechanism 48 is pulled,the drill stop 46 will not move in either direction, even if bumped.

Some embodiments include the ability to lock and hold the drill bit 42in a set position relative to the tube 50 in which it is housed. Forexample, in some embodiments, the drill bit 42 can be locked by lockingthe drill stop 46 relative to the tube 50 using a locking mechanism.FIGS. 17F-J illustrates tools for locking and holding a drill bit 42 ina set position in accordance with one embodiment of the invention. Insome embodiments, the locking mechanism 49 shown in FIG. 17H cancomprise two clam shells 49 (shown in FIG. 17F). In some embodiments, adrill bit 42 can be locked into position by assembling the clam shellsaround the drill stop 46 (shown in FIG. 17G). This feature allows theuser to lock the drill bit 42 in a position such that the tip slightlyprotrudes past the end of the tube 50 (see FIGS. 171 and 17J). In thisposition, the user can force the tube 50 to penetrate through softtissues to force the tube 50 to contact bone (for example during apercutaneous spine screw insertion).

In some further embodiments, the end-effectuator 30 can be configurednot block the tracking optical markers 720 or interfere with thesurgeon. For example, in some embodiments, the end-effectuator 30 cancomprise a clearance mechanism 33 including an actuator 33 a thatpermits this configuration, as depicted in FIGS. 18A and 18B. As shown,the guide tube 50 can be secured within a housing of the end-effectuator30 with two shafts 32. In some embodiments, the shafts 32 move relativeto one other, due to a parallelogram effect of the clearance mechanism33, the position of the guide tube 50 can mimic the position of theend-effectuator 30 (see FIG. 18B).

In applications such as cervical or lumbar fusion surgery, it can bebeneficial to apply distraction or compression across one or more levelsof the spine (anteriorly or posteriorly) before locking hardware inplace. In some embodiments, the end-effectuator 30 can comprise anattachment element 37 that is configured to apply such forces (see forexample FIGS. 19A-B). In some embodiments, the end-effectuator 30attachment element 37 can be configured for coupling to theend-effectuator 30 at substantially the same location as the clearancemechanism 33. In some embodiments, the end-effectuator 30 withattachment element 37 snaps into the same place as the end-effectuator30 without the attachment element 37. In some embodiments, during use ofthe end-effectuator 30 attachment element 37, the relative movement ofthe two shafts 32 caused by angulation 30 e will not cause movement inthe pitch 60 direction and will instead cause distraction (illustratedas moving from an attachment element 37 distance 37 a in FIG. 19A todistance 37 b in FIG. 19B). Further, although shaft 32 movement as shownin FIGS. 19A-B would cause distraction, rotation of the actuator 33 a inthe opposite direction to that represented by 30 e would causecompression (i.e. the distance 37 b in FIG. 19B would move towards thedistance 37 a in FIG. 19A).

In view of the embodiments described hereinbefore, some embodiments thatcan be implemented in accordance with the disclosed subject matter canbe better appreciated with reference to the flowcharts in FIGS. 24-33.For purposes of simplicity of explanation, the method disclosed by theembodiments described herein is presented and described as a series ofsteps; however, it is to be understood and appreciated that the claimedsubject matter is not limited by the order of acts, as some acts mayoccur in different orders and/or concurrently with other acts from thatshown and described herein. For example, the various methods orprocesses of some embodiments of the invention can alternatively berepresented as a series of interrelated states or events, such as in astate diagram. Furthermore, not all illustrated acts may be required toimplement a method in accordance with some embodiments of the invention.Further yet, two or more of the disclosed methods or processes can beimplemented in combination with each other, to accomplish one or morefeatures or advantages herein described.

It should be further appreciated that the methods disclosed in thevarious embodiments described throughout the subject specification canbe stored on an article of manufacture, or computer-readable medium, tofacilitate transporting and transferring such methods to a computingdevice (e.g., a desktop computer, a mobile computer, a mobile telephone,a blade computer, a programmable logic controller, and the like) forexecution, and thus implementation, by a processor of the computingdevice or for storage in a memory thereof.

In some embodiments, the surgical robot 15 can adjust its positionautomatically continuously or substantially continuously in order tomove the end-effectuator 30 to an intended (i.e. planned) position. Forexample, in some embodiments, the surgical robot 15 can adjust itsposition automatically continuously or substantially continuously basedon the current position of the end-effectuator 30 and surgical target asprovided by a current snapshot of tracking markers, LPS, or othertracking data. It should further be appreciated that certain positionadjustment strategies can be inefficient. For example, an inefficientstrategy for the robot 15 to find a target location can be an iterativealgorithm to estimate the necessary direction of movement, move towardthe target location, and then assess a mismatch between a currentlocation and the target location (the mismatch referred to as an error),and estimate a new direction, repeating the cycle ofestimate-movement-assessment until the target location is reached withina satisfactory error. Conversely, the position adjustment strategies inaccordance with some embodiments of the invention are substantively moreefficient than iterative strategies. For example, in some embodiments, asurgical robot 15 can make movements and adjust its location bycalibrating the relative directions of motions in each axis (permittingcomputation via execution of software or firmware with the computer 100)at each frame of tracking data, of a unique set of necessary motorencoder counts that can cause each of the individual axes to move to thecorrect location. In some embodiments, the Cartesian design of thedisclosed robot 15 can permit such a calibration to be made byestablishing a coordinate system for the robot 15 and determining keyaxes of rotation.

As described in greater detail below, in some embodiments, methods forcalibrating the relative directions of the robot's 15 axes can utilize asequence of carefully planned movements, each in a single axis. In someembodiments, during these moves, temporary tracking markers 720 areattached to the end-effectuator 30 to capture the motion of theend-effectuator 30. It should be appreciated that the disclosed methodsdo not require the axes of the robot 15 to be exactly or substantiallyperpendicular, nor do they require the vector along which a particularaxis moves (such as the x-axis 66) to coincide with the vector aboutwhich rotation occurs (such as pitch 60, which occurs primarily aboutthe x-axis 66). In certain embodiments, the disclosed methods includemotion along a specific robot 15 axis that occurs in a straight line. Insome embodiments, the disclosed methods for calibrating the relativedirections of movement of the robot's 15 axes can utilize one or moreframes of tracking data captured at the ends of individual moves made inx-(66), y-(68), roll (62), pitch (60), and Z-tube axes 64 from markers720 temporarily attached to the end-effectuator's 30 guide tube 50. Insome embodiments, when moving individual axes, all other axes can beconfigured at the zero position (for example, the position where theencoder for the axis reads 0 counts). Additionally or alternatively, oneor more frames of tracking data with all robot 15 axes at 0 counts(neutral position) may be necessary, and one or more frames of data withthe temporary markers 720 rotated to a different position about thelongitudinal axis of the guide tube 50 may be necessary. In someembodiments, the marker 720 positions from these moves can be used toestablish a Cartesian coordinate system for the robot 15 in which theorigin (0,0,0) is through the center of the end-effectuator 30 and is atthe location along the end-effectuator 30 closest to where pitch 60occurs. Additionally or alternatively, in some embodiments, thiscoordinate system can be rotated to an alignment in which y-axis 68movement of the robot 15 can occur exactly or substantially along thecoordinate system's y-axis 68, while x-axis 66 movement of the robot 15occurs substantially perpendicular to the y-axis 68, but by constructionof the coordinate system, without resulting in any change in the z-axis70 coordinate. In certain embodiments, the steps for establishing therobot's 15 coordinate system based at least on the foregoing individualmoves can comprise the following: First, from the initial and finalpositions of the manual rotation of tracking markers 720 about the longaxis of the end-effectuator 30, a finite helical axis of motion iscalculated, which can be represented by a vector that is centered in andaligned with the end-effectuator 30. It should be appreciated thatmethods for calculating a finite helical axis of motion from twopositions of three or more markers are described in the literature, forexample, by Spoor and Veldpaus (Spoor, C. W. and F. E. Veldpaus, “Rigidbody motion calculated from spatial co-ordinates of markers,” J Biomech13(4): 391-393 (1980)). In some embodiments, rather than calculating thehelical axis, the vector that is centered in and aligned with theend-effectuator 30 can be defined, or constructed, by interconnectingtwo points that are attached to two separate rigid bodies that can betemporarily affixed to the entry and exit of the guide tube 50 on theZ-tube axis 64. In this instance, each of the two rigid bodies caninclude at least one tracking marker 720 (e.g., one tracking marker 720,two tracking markers 720, three tracking markers 720, more than threetracking markers 720, etc.), and a calibration can be performed thatprovides information indicative of the locations on the rigid bodiesthat are adjacent to the entry and exit of the guide tube 50 relative tothe tracking markers.

A second helical axis can be calculated from the pitch 60 movements,providing a vector substantially parallel to the x-axis of the robot 15but also close to perpendicular with the first helical axis calculated.In some embodiments, the closest point on the first helical axis to thesecond helical axis (or vector aligned with the end-effectuator 30) iscalculated using simple geometry and used to define the origin of therobot's coordinate system (0,0,0). A third helical axis is calculatedfrom the two positions of the roll 62 axis. In certain scenarios, itcannot be assumed that the vector about which roll occurs (third helicalaxis) and the vector along which the y-axis 68 moves are exactly orsubstantially parallel. Moreover, it cannot be assumed that the vectorabout which pitch 60 occurs and the vector along which x-axis 66 motionoccurs are exactly or substantially parallel. Vectors for x-axis 66 andy-axis 68 motion can be determined from neutral and extended positionsof x-axis 66 and y-axis 68 and stored separately. As described herein,in some embodiments, the coordinate system can be realigned to enabley-axis movement of the robot 15 to occur exactly or substantially in they-axis 68 direction of the coordinate system, and x-axis 66 movement ofthe robot 15 without any change in the z-coordinate (70). In general, toperform such a transformation of coordinate systems, a series ofrotations about a coordinate axis is performed and applied to everypoint of interest in the current coordinate system. Each point is thenconsidered to be represented in the new coordinate system. In someembodiments, to apply a rotation of a point represented by a 3×1 vectorabout a particular axis, the vector can be pre-multiplied by a 3×3rotation matrix. The 3×3 rotation matrix for a rotation of Rx degreesabout the x-axis is:

$\quad\begin{bmatrix}1 & 0 & 0 \\0 & {\cos \; R_{x}} & {{- \sin}\; R_{x}} \\0 & {\sin \; R_{x}} & {\cos \; R_{x}}\end{bmatrix}$

The 3×3 rotation matrix for a rotation of R_(y) degrees about the y-axisis:

$\quad\begin{bmatrix}{\cos \; R_{y}} & 0 & {\sin \; R_{y}} \\0 & 1 & 0 \\{{- \sin}\; R_{y}} & 0 & {\cos \; R_{y}}\end{bmatrix}$

The 3×3 rotation matrix for a rotation of R_(z) degrees about the z-axisis:

$\quad\begin{bmatrix}{\cos \; R_{z}} & {{- \sin}\; R_{z}} & 0 \\{\sin \; R_{z}} & {\cos \; R_{z}} & 0 \\0 & 0 & 1\end{bmatrix}$

In some embodiments, to transform coordinate systems, a series of threerotations can be performed. For example, such rotations can be appliedto all vectors and points of interest in the current coordinate system,including the x-movement vector, y-movement vector and each of thehelical axe, to align the y movement vector with the new coordinatesystem's y-axis, and to align the x movement vector as closely aspossible to the new coordinate system's x-axis at z=0. It should beappreciated that more than one possible sequence of three rotations canbe performed to achieve substantially the same goal. For example, insome embodiments, a sequence of three rotations can comprise (1) arotation about x using an R_(x) value appropriate to rotate they-movement vector until its z coordinate equal 0, followed by (2) arotation about z using an R_(z) value appropriate to rotate they-movement vector until its x coordinate equal 0, followed by (3) arotation about y using an R_(y) value appropriate to rotate thex-movement vector until its z coordinate equals 0. In some embodiments,to find the rotation angle appropriate to achieve a given rotation, thearctangent function can be utilized. For example, in some embodiments,the angle needed to rotate a point or vector (x1,y1,z1) about the z axisto y1=0 is −arctan(y1/x1).

It should be appreciated that after transformation of the coordinatesystem, in some embodiments, although the new coordinate system isaligned such that the y-movement axis of the surgical robot 15 isexactly or substantially exactly aligned with the coordinate system'sy-axis 68, the roll 62 rotation movement of the robot 15 should not beassumed to occur exactly or substantially exactly about a vector alignedwith the coordinate system's y-axis 68. Similarly, in some embodiments,the pitch 60 movement of the surgical robot 15 should not be assumed tooccur exactly or substantially exactly about a vector aligned with thecoordinate system's x-axis. In some embodiments, in roll 62 and pitch 60rotational movement there can be linear and orientational “offsets” fromthe helical axis of motion to the nearest coordinate axis. In someembodiments, from the helical axes determined above using trackedmarkers, such offsets can be calculated and retained (e.g., stored in acomputing device's memory) so that for any rotation occurring duringoperation, the offsets can be applied, rotation can be performed, andthen negative offsets can be applied so that positional change occurringwith rotation motion accounts for the true center of rotation.

In some embodiments, during tracking, the desired trajectory can befirst calculated in the medical image coordinate system, thentransformed to the robot 15 coordinate system based at least on knownrelative locations of active markers. For example, in some embodiments,conventional light-emitting markers and/or conventional reflectivemarkers associated with an optical tracking system 3417 can be used (seefor example active markers 720 in FIG. 20A). In other embodiments,conventional electromagnetic sensors associated with an electromagnetictracking system can be used. In some other embodiments, radio-opaquemarkers (for example markers 730 shown in FIG. 20A) can be used with aCT imaging system. In some embodiments, radio-opaque markers 730(spheres formed, at least in part from metal or other dense material),can be used to provide a marker 730 that can at least partially absorbx-rays to produce a highly contrasted image of the sphere in a CT scanimage.

In some embodiments, the necessary counts for the end-effectuator 30 toreach the desired position in the robot's 15 coordinate system can becalculated based on the following example process. First the necessarycounts to reach the desired angular orientation can be calculated. Insome embodiments, a series of three rotations can be applied to shiftthe coordinate system temporarily to a new coordinate system in whichthe y-axis 68 coincides or substantially coincides with the helical axisof motion for roll 62, and the x-axis 66 is largely aligned with thehelical axis of motion for pitch 60 and by definition, and the helicalaxis of motion for pitch 60 has constant z=0. Then, the number of countsnecessary to achieve the desired pitch 60 can be determined, keepingtrack of how this pitch 60 can affect roll 62. In one implementation, tofind the necessary counts to achieve the desired pitch, the change inpitch angle 60 can be multiplied by the previously calibrated motorcounts per degree for pitch. The change in roll 62 caused by this changein pitch 60 can be calculated from the orientation of the helical axisand the rotation angle (pitch) about the helical axis. Then, thenecessary roll 62 to get to the desired roll 62 to reach the plannedtrajectory alignment can be calculated, with the benefit that applyingroll 62 does not, by definition of the coordinate system, result in anyfurther change in pitch. The coordinate system is then shifted back tothe previously described robot 15 coordinate system by the inverse ofthe three rotations applied above. Then the necessary counts to reachthe desired x-axis 66 position can be calculated, also keeping track ofhow this x-axis 66 position change will affect y-axis 68 position. Thenthe necessary y-axis 68 counts to reach the desired y-axis position canbe readily calculated with the benefit that changing the y-axis 68coordinate can have no effect on any other axis since the y-axis motionvector is by definition aligned with the robot's y-axis 68. In ascenario in which the Z-tube 50 position is being actively controlled,the orientation of the Z-tube 50 movement vector is adjusted whenadjusting roll 62 and pitch 60 and the counts necessary to move it tothe desired position along the trajectory vector is calculated from theoffset. In some embodiments, after the necessary counts to achieve thedesired positions in all axes are calculated as described, these countscan be sent as computer-accessible instructions (e.g., computer-readableand/or computer-executable instructions) to respective controllers foreach axis in order to move the axes to the computed positions.

FIG. 24 is a flowchart of a method 2400 for positioning and advancingthrough soft tissue in accordance with one or more aspects according toone embodiment of the invention. As shown, in some embodiments, at block2410, a medical image is accessed (e.g., received, retrieved, orotherwise acquired). As described herein, the medical image can be a 3Danatomical image scan including, but not limited to a CT scan, amagnetic resonance imaging scan (hereinafter referred to as an “MRIscan”), an X-ray image, or other anatomical scan. It should beappreciated that any 3D anatomical scan may be utilized with thesurgical robot 15 and is within the scope of the present invention. Insome embodiments, at block 2420, a targeting fixture 690 is calibratedto the medical image. In some embodiments, the calibration can besemi-automated or automated. In some embodiments, at block 2430, dataindicative of an intended trajectory associated with the medical imageis received. In some embodiments, at block 2440, a robot 15 issubstantially maintained on the intended trajectory. In someembodiments, a control platform (for example, platform 3400 shown inFIG. 34) can adjust movement of the robot 15 in order to substantiallymaintain the intended trajectory.

FIGS. 25-26 are flowcharts of methods for calibrating a targetingfixture 690 to a medical image in accordance with one or moreembodiments of the invention. As shown in FIG. 25, in some embodiments,the method 2500 can embody a semi-automated calibration method and canbe implemented (e.g., executed) as part of block 2420 in certainscenarios. In some embodiments, at block 2510, data indicative of amedical image having a representation of a plurality of radio-opaquemarkers (for example radio-opaque markers 730) is received. In oneembodiment, as described herein, such plurality can contain fourradio-opaque markers 730. In some embodiments, at block 2520, ageometrical center for each radio-opaque marker 730 is determined in acoordinate system associated with the medical image. In someembodiments, image thresholding can be utilized to define one or moreedges of each radio-opaque marker 730 and a geometrical center thereof.Thresholding refers to an image processing technique in which pixelintensity within a 2D region can be monitored. For example, the x, ypositions (for instance expressed in mm) of pixels of an intensity thatreach a predetermined value can be retrieved. Stated similarly, thethreshold refers to the transition pixel intensity from light to dark.In some embodiments, on 2D slices of the medical image, the radio-opaquemarker 730 can appear light and the adjacent space (such as tissue orair) can appear dark. In some embodiments, displaying pixels thatsatisfy a thresholding criterion at an intensity encountered at the edgeof a radio-opaque marker can yield a largely circular trace outliningthe marker on the medical image. Since in some embodiments, markers 730can be spherical, a method for finding the center of the marker 730 in a2D view can include firstly restricting the 2D view to a sampling regionwith the high-intensity image of the sphere toward the center of theregion and pixels of lower intensity toward the outer edges of theregion. Secondly, the method can include finding the mean x thresholdposition (e.g., the maximum x coordinate of pixels satisfying thethreshold criterion plus minimum x coordinate of pixels satisfying thethreshold criterion divided by two), and finding the mean y thresholdposition using a similar method. In some embodiments, the center of thesphere can be found by determining 2D centers of slices through the samemarker 730 in two orthogonal views. For example, in some embodiments,the method can include finding mean x and mean y from an xy slice, thenfinding mean x and mean z from an xz slice to get a mean x, y, and zaxis coordinate representing the center of the marker 730. Further, uponor after the mean x, mean y, and mean z are found, new xy and xz slicescan be evaluated again and the maximum and minimum x, y, and z thresholdvalues can be again determined to evaluate the dimensions of thethresholded object in each view. It can be appreciated from this methodthat in some embodiments, a non-spherical object of high intensity, suchas a small process of cortical bone extending away from the side of thespine, may fail to satisfy (1) a condition where there is high intensitynear the middle of the region, but low intensity all around, since theprocess may extend out of the region in one or more directions; or (2) acondition where the dimensions in x, y, and z of the centered object donot match each other (e.g., non-spherical case).

As shown in FIG. 25, in some embodiments, at block 2530, it isascertained if one centered sphere is determined for each radio-opaquemarker 730 for the fixture being calibrated. In some embodiments, whenat least one such sphere is not determined, or identified, the thresholdsetting is adjusted and flow is directed to block 2510. In someembodiments, at block 2540, each centered sphere is mapped to eachradio-opaque marker 730 of the plurality of radio-opaque markers 730. Asshown, in some embodiments, block 2540 can represent a mapping actionwhich, in some embodiments, can comprise implementing a sorting processto establish a specific centered sphere is associated with a specificone of the plurality of radio-opaque markers 730. In some embodiments, aplurality of radio-opaque markers 730 contains four radio-opaque markers730 (represented, for example, as OP1, OP2, OP3, and OP4). In someembodiments, the sorting process can map each one of four centeredmarkers 730 to one of OP1, OP2, OP3, or OP4. In some embodiments, thesorting process can distinguish a specific marker 730 by measuringinter-marker distances from mean positions of the four unidentifiedmarkers 730, and comparing such distances to extant inter-markerdistances (for example, those that are pre-measured and retained inmemory, such as mass storage device 3404) for each marker 730 on amarker fixture. In some embodiments, the opaque markers 730 on thefixture 690 can be placed asymmetrically, each marker 730 can beidentified from a unique set of inter-marker distances corresponding tosuch marker 730. For example, in some embodiments where the sum ofinter-marker distances of one unknown marker 730 relative to the otherthrees markers 730 measured from the medical image is D, a singlephysical marker 730 (one of OP1, OP2, OP3, or OP4) can have a matchinginter-marker distance sum within a specified tolerance (such as ±1 mm)of D. In some embodiments, at block 2550, coordinates of each centeredsphere can be retained (for example in memory of a computer platform3400). As described herein, in some embodiments, such coordinates can beutilized in a process for tracking movement of a robot 15.

Some embodiments include method 2600 (shown as a flowchart in FIG. 26)that can embody an automated calibration method and can be implemented(e.g., executed) as part of block 2420 in certain scenarios. In someembodiments, at block 2605, for a Z position, an x-y grid of test areasquares is created. In some embodiments, each test area square can belarger than the diameter of a sphere (a radio-opaque marker 730)associated with a targeting fixture 690 comprised of material that, whenimaged, appears as opaque. In some embodiments, each test area squarecan be at least partially overlapping with at least one adjacent testarea square. In one embodiment of the invention, a nearly half thesurface of a test area square can overlap with the surface of anadjacent test area square. In some embodiments, at block 2610,calibration is initiated at place Z=0, x-y grid row 0, x-y grid column0. In some embodiments, at block 2615, borders of a medical image withina first test area square are determined. It should be appreciated thatin some embodiments, a sphere can be rendered as a circular area, but asection of bone represented in the medical image can be asymmetrical. Insome embodiments, a thresholding process in accordance with one or moreaspects described herein can be implemented to exclude one or moreinvalid markers 730 by assessing if the x, y, and z axes boundaries ofthe object are of substantially equivalent dimensions, consistent withthe shape being spherical.

In some embodiments, at block 2620, it is determined if a maximum (max)border coordinate is less than the maximum coordinate of the test area,and a minimum (min) border coordinate is greater than the minimumcoordinate of the test area, and vertical span of features rendered inthe image are equal or substantially equal to horizontal span of suchfeatures. As shown in FIG. 26, in some embodiments, in the negativecase, flow is directed to block 2645, at which the first test area ismoved to next grid location and next Z plane. Conversely, in case thethree foregoing conditions are fulfilled, flow is directed to block2625, at which X coordinate and Y coordinate are centered at the centerof the current test area. In some embodiments, at block 2630, Zcoordinate is probed by creating a second test area square spanningupwards and downwards in XZ plane and/or YZ plane to determine one ormore borders of an object. In some embodiments, at block 2635, it isdetermined if borders of the object observed in XZ plane are ofsubstantially equivalent relative spacing (vertically and horizontally)to borders in the x-y plane, consistent with the shape of the objectbeing spherical. In some embodiments, when such borders are of differentspacing, flow is directed to block 2645. Conversely, when spacing ofsuch borders is substantially equivalent between views, a sphere havinga center at X coordinate, Y coordinate, and Z coordinate is identifiedat block 2640 and flow is directed to block 2645.

In some embodiments, at block 2650, it is determined if last row andcolumn in x-y grid are reached and last Z plane is reached as a resultof updating the first test area at block 2645. In some embodiments, inthe negative case, flow is directed to block 2615, in which the firstarea is the updated instance of a prior first area, with the flowreiterating one or more of blocks 2620 through 2645. Conversely, in theaffirmative case, flow is directed to block 2655 at which invalidmarker(s) 730 can be excluded. In some embodiments, a paring process canbe implemented to exclude one or more invalid markers 730. For thisparing process, in some embodiments, the known spacings between each ofthe N radio-opaque markers 730 (with N a natural number) on thetargeting fixture 690 and each other radio-opaque marker 730 on thetargeting fixture 690 can be compared to the markers 730 that have beenfound on the medical image. In a scenario in which more than N number ofmarkers 730 can be found on the medical image, any sphere found on themedical image that does not have spacings relative to N−1 other markers730 that are within an acceptable tolerance of known spacings retained,for example, on a list can be considered to be invalid. For example, ifa targeting fixture 690 has four radio-opaque markers 730, there are sixknown spacings, with each marker 730 having a quantifiable spacingrelative to three other markers 730: the inter-marker spacings formarkers 1-2, 1-3, 1-4, 2-3, 2-4, and 3-4. On the 3D medical image of thetargeting fixture 690, in some embodiments, if five potential markers730 are found on the medical image, their inter-marker spacings can becalculated. In this scenario, there are 10 inter-marker spacings: 1-2,1-3, 1-4, 1-5, 2-3, 2-4, 2-5, 3-4, 3-5, and 4-5, with each sphere havinga quantifiable spacing relative to four other markers 730. Consideringeach of the five potential markers 730 individually, if any one of suchfive markers 730 does not have three of its four inter-marker spacingswithin a very small distance of the spacings on the list of sixpreviously quantified known spacings, it is considered invalid.

In some embodiments, at block 2660, each centered radio-opaque marker730, identified at block 2640, can be mapped to each radio-opaque marker730 of a plurality of radio-opaque markers 730. In some embodiments, asorting process in accordance with one or more aspects described hereincan be implemented to map such markers 730 to radio opaque markers 730.In some embodiments, at block 2665, coordinates of each centered spherecan be retained (e.g., in memory of a computer platform 3400). Asdescribed herein, in some embodiments, such coordinates can be utilizedin a process for tracking movement of a robot 15. In some embodiments,during tracking, the established (e.g., calibrated) spatial relationshipbetween active markers 720 and radio-opaque markers 730 can be utilizedto transform the coordinate system from the coordinate system of themedical image to the coordinate system of the tracking system 3417, orvice versa. Some embodiments include a process for transformingcoordinates from the medical image's coordinate system to the trackingsystem's coordinate system can include a fixture 690 comprising fourradio-opaque markers OP1, OP2, OP3, and OP4 (for example radio-opaquemarkers 730) in a rigidly fixed position relative to four active markersAM1, AM2, AM3, AM4 (for example, active markers 720). In someembodiments, at the time the calibration of the fixture 690 occurred,this positional relationship can be retained in a computer memory (e.g.,system memory 3412) for later access on real-time or substantially onreal-time in a set of four arbitrary reference Cartesian coordinatesystems that can be readily reachable through transformations at anylater frame of data. In some embodiments, each reference coordinatesystem can utilize an unambiguous positioning of three of the activemarkers 720. Some embodiments can include a reference coordinate systemfor AM1, AM2, and AM3 can be coordinate system in which AM1 can bepositioned at the origin (e.g., the three-dimensional vector (0,0,0));AM2 can be positioned on the x-axis (e.g., x-coordinate AM2x>0,y-coordinate AM2y=0, and z-coordinate AM2z=0); and AM3 can be positionedon the x-y plane (e.g., x-coordinate AM3x unrestricted, y-coordinateAM3y>0, and z-coordinated AM3z=0). Some embodiments include a method togenerate a transformation to such coordinate system can comprise (1)translation of AM1, AM2, AM3, OP1, OP2, OP3, and OP4 in a manner thatAM1 vector position is (0,0,0); (2) rotation about the x-axis by anangle suitable to position AM2 at z=0 (e.g., rotation applied to AM2,AM3 and OP1-OP4); (3) rotation about the z-axis by an angle suitable toposition AM2 at y=0 and x>0 (e.g., rotation applied to AM2, AM3 andOP1-OP4); (4) rotation about the x-axis by an angle suitable to positionAM3 at z=0 and y>0 (e.g., rotation applied to AM3 and OP1-OP4). Itshould be appreciated that, in some embodiments, it is unnecessary toretain these transformations in computer memory, for example; rather,the information retained for later access can be the coordinates ofAM1-AM3 and OP1-OP4 in such reference coordinate system. In someembodiments, another such reference coordinate system can transformOP1-OP4 by utilizing AM2, AM3, and AM4. In some embodiments, anothersuch reference coordinate system can transform OP1-OP4 by utilizing AM1,AM3, and AM4. In some further embodiments, another such referencecoordinate system can transform OP1-OP4 by utilizing AM1, AM2, and AM4.

In some embodiments, at the time of tracking, during any given frame ofdata, the coordinates of the active markers AM1-AM4 can be provided bythe tracking system 3417. In some embodiments, by utilizing markers AM1,AM2, and AM3, transformations suitable to reach the conditions of thereference coordinate system can be applied. In some embodiments, suchtransformations can position AM1, AM2, and AM3 on the x-y plane in aposition in proximity to the position that was earlier stored incomputer memory for this reference coordinate system. In someembodiments, for example, to achieve a best fit of the triad of activemarkers 720 on their stored location, a least squares algorithm can beutilized to apply an offset and rotation to the triad of markers 720. Inone implementation, the least squares algorithm can be implemented asdescribed by Sneath (Sneath P. H. A., Trend-surface analysis oftransformation grids, J. Zoology 151, 65-122 (1967)). In someembodiments, transformations suitable to reach the reference coordinatesystem, including the least squares adjustment, can be retained inmemory (e.g., system memory 3412 and/or mass storage device 3404). Insome embodiments, the retained coordinates of OP1-OP4 in such referencecoordinate system can be retrieved and the inverse of the retainedtransformations to reach the reference coordinate system can be appliedto such coordinates. It should be appreciated that the new coordinatesof OP1-OP4 (the coordinates resulting from application of the inverse ofthe transformations) are in the coordinate system of the tracking system3417. Similarly, in some embodiments, by utilizing the remaining threetriads of active markers 720, the coordinates of OP1-OP4 can beretrieved.

In some embodiments, the four sets of OP1-OP4 coordinates in thetracking system's coordinate system that can be calculated fromdifferent triads of active markers 720 are contemplated to havecoordinates that are approximately equivalent. In some embodiments, whencoordinates are not equivalent, the data set can be analyzed todetermine which of the active markers 720 provides non-suitable (orpoor) data by assessing how accurately each triad of active markers 720at the current frame overlays onto the retained positions of activemarkers 720. In some other embodiments, when the coordinates are nearlyequivalent, a mean value obtained from the four sets can be utilized foreach radio-opaque marker 730. In some embodiments, to transformcoordinates of other data (such as trajectories from the medical imagecoordinate system) to the tracking system's coordinate system, the sametransformations can be applied to the data. For example, in someembodiments, the tip and tail of a trajectory vector can be transformedto the four reference coordinate systems and then retrieved with triadsof active markers 720 at any frame of data and transformed to thetracking system's coordinate system.

FIG. 27 is a flowchart of a method 2700 for automatically maintaining asurgical robot 15 substantially on a trajectory in accordance someembodiments of the invention. In some embodiments, at block 2710, dataindicative of position of one or more of Z-frame 72 or Z-tube 50 arereceived. In some embodiments, at block 2720, data indicative of eachrobot 15 joint in the surgical robot 15, such as encoder counts fromeach axis motor 160, are accessed. In some embodiments, at block 2730, acurrent robot 15 position on a planned trajectory is accessed (theposition being represented in a camera coordinate system or thecoordinate system of other tracking device). In one embodiment, theplanned trajectory can be generated by an operator. For example, theoperator (e.g., a surgeon) can scroll and rotate through the imageslices until the desired anatomy can be viewed on three windowsrepresenting three orthogonal planes (typically sagittal, coronal, andaxial slices). The operator can then draw a line at the desired slopeand location on one window; the line simultaneously is calculated andappears on the other two windows, constrained by the views of thescreens and orientation on the window on which it was drawn.

In another embodiment, a line (e.g., referred to as line t) that isfixed on the image both in angle and position represents the desiredtrajectory; the surgeon has to rotate and scroll the images to alignthis trajectory to the desired location and orientation on the anatomy.At least one advantage of such embodiment is that it can provide a morecomplete, holistic picture of the anatomy in relationship to the desiredtrajectory that may not require the operator to erase and start over ornudge the line after it is drawn, and this process was thereforeadopted. In some embodiments, a planned trajectory can be retained in amemory of a computing device (for example, computing device 3401) thatcontrols the surgical robot 15 or is coupled thereto for use during aspecific procedure. In some embodiments, each planned trajectory can beassociated with a descriptor that can be retained in memory with theplanned trajectory. As an example, the descriptor can be the level andside of the spine where screw insertion is planned.

In another embodiment, the line t that is (fixed on the image both inangle and position representing the desired trajectory) is dictated bythe current position of the robot's end effectuator 30, or by anextrapolation of the end effectuator guide tube 50 if an instrument 35were to extend from it along the same vector. In some embodiments, asthe robot 15 is driven manually out over the patient 18 by activatingmotors 160 controlling individual or combined axes 64, 66, 68, 70, theposition of this extrapolated line (robot's end effectuator 30) isupdated on the medical image, based on markers 720 attached to therobot, conventional encoders showing current position of an axis, or acombination of these registers. In some embodiments, when the desiredtrajectory is reached, that vector's position in the medical imagecoordinate system is stored into the computer memory (for example inmemory of a computer platform 3400) so that later, when recalled, therobot 15 will move automatically in the horizontal plane to intersectwith this vector. In some embodiments, instead of manually driving therobot 15 by activating motors 160, the robot's axes can be put in apassive state. In some embodiments, in the passive state, the markers720 continue to collect data on the robot arm 23 position and encoderson each axis 64, 66, 68, 70 continue to provide information regardingthe position of the axis; therefore the position of an extrapolated linecan be updated on the medical image as the passive robot 15 is draggedinto any orientation and position in the horizontal plane. In someembodiments, when a desired trajectory is reached, the position can bestored into the computer memory. Some embodiments include conventionalsoftware control or a conventional switch activation capable of placingthe robot 15 into an active state to immediately rigidly hold theposition or trajectory, and to begin compensating for movement of thepatient 18.

In some further embodiments, the computing device that implements themethod 2700 or that is coupled to the surgical robot 15 can render oneor more planned trajectories. Such information can permit confirmingthat the trajectories planned are within the range of the robot's 15reach by calculating the necessary motor 160 encoder counts to reacheach desired trajectory, and assessing if the counts are within therange of possible counts of each axis.

In some embodiments, information including whether each trajectory is inrange, and how close each trajectory is to being out of range can beprovided to an agent (such as a surgeon or other user, or equipment).For example, in some embodiments, a display means 29 (such as a displaydevice 3411) can render (i.e. display) the limits of axis counts orlinear or angular positions of one or more axes and the position on eachaxis where each targeted trajectory is currently located.

In another embodiment, the display device 3411 (for example, a display150) can render a view of the horizontal work field as a rectangle withthe robot's x-axis 66 movement and y-axis 68 movement ranges definingthe horizontal and vertical dimensions of the rectangle, respectively.In some embodiments, marks (for example, circles) on the rectangle canrepresent the position of each planned trajectory at the currentphysical location of the robot 15 relative to the patient 18. In anotherembodiment, a 3D Cartesian volume can represent the x-axis 66 movement,y-axis 68 movement and z-axis 70 movement ranges of the robot 15. Insome embodiments, line segments or cylinders rendered in the volume canrepresent the position of each planned trajectory at the currentlocation of the robot 15 relative to the patient 18. Repositioning ofthe robot 15 or a patient 18 is performed at this time to a locationthat is within range of the desired trajectories. In other embodiments,the surgeon can adjust the Z Frame 72 position, which can affect thex-axis 66 range and the y-axis 68 range of trajectories that the robot15 is capable of reaching (for example, converging trajectories requireless x-axis 66 or y-axis reach the lower the robot 15 is in the z-axis70). During this time, simultaneously, a screen shows whether trackingmarkers on the patient 18 and robot 15 are in view of the detectiondevice of the tracking system (for example, optical tracking system 3417shown in FIG. 34). Repositioning of the cameras, if necessary, is alsoperformed at this time for good visibility or optimal detection oftracking sensors.

In some embodiments, at block 2740, orientation of an end-effectuator 30in a robot 15 coordinate system is calculated. In some embodiments, atblock 2750, position of the end-effectuator 30 in the robot 15coordinate system is calculated. In some embodiments, at block 2760, aline t defining the planned trajectory in the robot 15 coordinate systemis determined. In some embodiments, at block 2770, robot 15 position islocked on the planned trajectory at a current Z level. In someembodiments, at block 2780, information indicative of quality of thetrajectory lock can be supplied. In some embodiments, actualcoordinate(s) of the surgical robot 15 can be rendered in conjunctionwith respective coordinate(s) of the planned trajectory. In someembodiments, aural indicia can be provided based on such quality. Forinstance, in some embodiments, a high-frequency and/or high-amplitudenoise can embody aural indicia suitable to represent a low-quality lock.In some alternative embodiments, a brief melody may be repeatedlyplayed, such as the sound associated with successful recognition of aUSB memory device by a computer, to indicate successful lock on theplanned trajectory. In other embodiments, a buzz or other warning noisemay be played if the robot 15 is unable to reach its target due to theaxis being mechanically overpowered, or if the tracking markers 720 areundetectable by cameras 8200 or other marker position sensors.

In some embodiments, at block 2790, it is determined if a surgicalprocedure is finished and, in the affirmative case, the flow terminates.In other embodiments, the flow is directed to block 2710. In someembodiments, the method 2700 can be implemented (i.e., executed) as partof block 2440 in certain scenarios. It should be appreciated that insome embodiments, the method 2700 also can be implemented for any robot15 having at least one feature that enable movement of the robot 15.

FIG. 28A is a flowchart of a method 2800 a for calculating positionand/or orientation of an end-effectuator 30 in a robot 15 according toone at least one embodiment of the invention. In some embodiments, theposition and/or orientation can be calculated based at least onmonitored position of a tracking array 690 mounted on the robot's x-axis66 and monitored counts of encoders on the y-axis 68, roll 62, pitch 60,and Z-tube axis 64 actuators. In some embodiments, position and/ororientation are calculated in a robot 15 coordinate system. In someembodiments, the method 2800 a can embody one or more of blocks 2740 or2750. In some embodiments, at block 2805 a, the current position (i.e.,3D position) of x-axis 66 mounted robot 15 tracking markers is accessed.In some embodiments, at block 2810 a, the current position of thetracking array 690 mounted to the robot 15 is transformed to neutralposition. This is a position that was previously stored and representsthe position of the tracking array 690 when the robot 15 was at zerocounts on each axis between the tracker 690 and the robot 15 base(x-axis 66 and z-axis 70 in this configuration). In some embodiments,the set of transformations (T1) to transform from the current positionto the neutral position can be retained in computer memory (for example,the system memory 3412 and/or mass storage device 3404). In someembodiments, a tip and tail of a line segment representing the vector inline with the end-effectuator 30 can be computed based at least on theprocess described herein. In some embodiments, this process canestablish a robot 15 coordinate system and calibrate the relativeorientations of the axes of movement of the robot 15 where trackingmarkers 720 can be attached temporarily to the end-effectuator 30. Insome embodiments, the vector's position in space can be determined byfinding the finite helical axis of motion of markers 720 manuallyrotated to two positions around the guide tube 50. In some embodiments,the vector's position in space can be determined by connecting a pointlocated at the entry of the guide tube 50 (identified by a temporarilymounted rigid body 690 with tracking markers 720) to a point located atthe exit of the guide tube 50 (identified by a second temporarilymounted rigid body 690 with tracking markers 720).

In some embodiments, the tip of the line segment can be obtained as thepoint along the vector that is closest to the vector representing thehelical axis of motion during pitch. In some embodiments, the tail ofthe line segment can be set an arbitrary distance (for example about 100mm) up the vector aligned with the guide tube 50 and/or first helicalaxis. In some embodiments, the Cartesian coordinates of such tip andtail positions can be transformed to a coordinate system describedherein in which the y-axis 68 movement can coincide with the y-axis 68of the coordinate system, and the x-axis 66 can be aligned such thatx-axis 66 movement can cause the greatest change in direction in thex-axis 66, moderate change in the y-axis 68, and no change in the z-axis70. In some embodiments, these coordinates can be retained in a computermemory (for example system memory 3412) for later retrieval. In someembodiments, at block 2815 a, tip and tail coordinates for neutral areaccessed (i.e., retrieved). In some embodiments, at block 2820 a, tipand tail are translated along Z-tube 50 neutral unit vector by monitoredZ-tube 50 counts. In some embodiments, at block 2825 a, an instantaneousaxis of rotation (“IAR”) is accessed. The IAR is the same as the helicalaxis of motion ignoring the element of translation along the helicalaxis for pitch 60 for neutral. As described earlier, in someembodiments, the vectors for this IAR were previously stored in computermemory at the time the coordinate system of the robot 15 was calibrated.In some embodiments, at block 2830 a, tip coordinate, tail coordinate,and IAR vector direction and location coordinates are transformed (forexample, iteratively transformed) to a new coordinate system in whichIAR is aligned with X axis. In some embodiments, data indicative of suchtransformations (T2) can be stored. In some embodiments, at block 2835a, tip coordinate and tail coordinate are rotated about X axis by pitch60 angle. In some embodiments, at block 2840 a, tip coordinate and tailcoordinate are transformed back by inverse of T2 to the previouscoordinate system. In some embodiments, at block 2845 a, previouslystored vectors that represent the IAR for roll 62 are accessed. In someembodiments, at block 2850 a, tip coordinate, tail coordinate, IARcoordinate are transformed (for example, iteratively transformed) to anew coordinate system in which IAR is aligned with y-axis 68. In someembodiments, data indicative of such transformation(s) (T3) can beretained in memory. In some embodiments, at block 2855 a, tip coordinateand tail coordinate are rotated about y-axis 68 by roll 62 angle. Insome embodiments, at block 2860 a, tip coordinate and tail coordinateare transformed back by inverse of T3 to the previous coordinate system.In some embodiments, at block 2865 a, tip coordinate and tail coordinateare translated along a y-axis 68 unit vector (e.g., a vector aligned inthis coordinate system with the y-axis 68) by monitored counts. In someembodiments, at block 2870 a, tip coordinate and tail coordinate aretransformed back by inverse of T1 to the current coordinate systemmonitored by the tracking system 3417.

FIG. 28B is a flowchart of a method 2800 b for calculating positionand/or orientation of an end-effectuator 30 in a robot 15 in accordancewith one embodiment of the invention. In some embodiments, the positionand/or the orientation can be calculated based at least on monitoredposition of a tracking array 690 mounted on the robot's 15 roll 62 axisand monitored counts of encoders on the pitch 60 and Z-tube 50actuators. In some embodiments, position and/or orientation can becalculated in a robot 15 coordinate system. In accordance with someembodiments of the invention, the method 2800B can embody one or more ofblocks 2740 or 2750. In some embodiments, at block 2805 b, currentposition of an array of one or more robot 15 tracking markers 720 isaccessed. In some embodiments, the current position is a 3D position andthe array of robot 15 tracking markers 720 can be mounted to the roll 62axis of the robot 15. In some embodiments, at block 2810 b, the currentposition of the array of robot 15 tracking markers 720 mounted to therobot 15 is transformed to neutral position. In some embodiments, theneutral position can be a position that was previously stored and canrepresent the position of the robot 15 tracking array 690 when the robot15 had zero counts on each axis between the tracker 690 and the robotbase 25 (e.g., z-axis 70, x-axis 68, y-axis 66, and roll 62 axis in thisconfiguration). In some embodiments, data indicative of a set oftransformations (T1) to go from the current position to the neutralposition can be stored in a computer memory (for example, mass storagedevice 3404 or system memory 3412).

In some embodiments, in order to establish a robot 15 coordinate systemand calibrate the relative orientations of the axes of movement of therobot 15, a tip and tail of a line segment representing the vector inline with the end-effectuator 30 with temporarily attached trackingmarkers 720 is located. In some embodiments, the vector's position inspace can be determined by finding the finite helical axis of motion ofmarkers manually rotated to two positions around the guide tube 50. Inother embodiments, the vector's position in space can be determined byconnecting a point located at the entry of the guide tube 50 (identifiedby a temporarily mounted rigid body 690 with tracking markers 720) to apoint located at the exit of the guide tube 50 (identified by a secondtemporarily mounted rigid body 690 with tracking markers 720).

In some embodiments, the tip of the line segment can be found as thepoint along the vector that is closest to the vector representing thehelical axis of motion during pitch. In some embodiments, the tail ofthe line segment can be set an arbitrary distance (for example, nearly100 mm) up the vector aligned with the guide tube/first helical axis. Insome embodiments, the Cartesian coordinates of these tip and tailpositions can be transformed to a coordinate system described herein inwhich the y-axis 68 movement substantially coincides with the y-axis 68of the coordinate system, and the x-axis 66 movement is aligned in amanner that, in some embodiments, x-axis 66 movement causes the greatestchange in direction in the x-axis 66, slight change in y-axis 68, and nochange in the z-axis 70. It should be appreciated that such coordinatescan be retained in memory (for example system memory 3412) for laterretrieval. In some embodiments, at block 2815 b, tip and tailcoordinates for the neutral position are accessed (i.e., retrieved orotherwise obtained). In some embodiments, at block 2820 b, tip and tailare translated along Z-tube 50 neutral unit vector by monitored Z-tube50 counts. In some embodiments, at block 2825 b, IAR is accessed. In oneimplementation, the vectors for this IAR may be available in a computermemory, for example, such vectors may be retained in the computer memoryat the time the coordinate system of the robot 15 is calibrated inaccordance with one or more embodiments described herein. In someembodiments, at block 2830 b, tip coordinate, tail coordinate, and IARvector direction and location coordinates are transformed to a newcoordinate system in which IAR is aligned with x-axis 66. In someembodiments, data indicative of the applied transformations (T2) can beretained in a computer memory. In some embodiments, at block 2835 b, tipcoordinate and tail coordinate are rotated about x-axis 66 by pitch 60angle. In some embodiments, at block 2840 b, tip coordinate and tailcoordinate are transformed back by applying the inverse of T2 to theprevious coordinate system. In some embodiments, at block 2870 b, tipcoordinate and tail coordinate are transformed back by applying theinverse of T1 to the current coordinate system monitored by the trackingsystem 3417.

FIG. 29 is a flowchart of a method 2900 for determining a lineindicative of a trajectory in a robot 15 coordinate system in accordancewith one embodiment of the invention. In some embodiments, thetrajectory can be a planned trajectory associated with a surgicalprocedure. In some embodiments, at block 2910, for a set of currentactive marker 720 positions on a targeting fixture 690, respectiveopaque marker 730 positions are accessed from a rigid body source (suchas a fixture 690). In some embodiments, at block 2920, an opaque marker730 position is transformed from a representation in an image coordinatesystem to a representation in a current active marker 720 coordinatesystem. In some embodiments, at block 2930, a planned trajectory istransformed from a representation in the image coordinate system to arepresentation in the current active maker 720 coordinate system. Insome embodiments, at block 2940, a set of current marker 720 positionson a robot 15 is transformed to a representation in a robot 15coordinate system. In some embodiments, at block 2950, the plannedtrajectory is transformed from a representation in the current activemarker 720 coordinate system to the robot 15 coordinate system.

FIG. 30 is a flowchart of a method 3000 for adjusting a robot 15position to lock on a trajectory in accordance in accordance with oneembodiment of the invention. As illustrated, in some embodiments, thetrajectory can be locked at a current Z plane, or level above thesurgical field 17. In some embodiments, at block 3005, it is determinedif roll 62 of an end-effectuator 30 matches roll of the trajectory(represented by a line t (or t)). In the negative case, in someembodiments, an instruction to move a roll 62 axis is transmitted atblock 3010 and flow is directed to block 3015. Conversely, in theaffirmative case, in some embodiments, flow is directed to block 3015where it is determined if the pitch 60 of the end-effectuator 30 hasmatched the pitch of the trajectory. In the negative case, aninstruction to move a pitch 60 axis is transmitted at block 3020 andflow is directed to block 3025. In the affirmative case, in someembodiments, flow is directed to block 3025 where it is determined ifx-axis 66 coordinates of points on the vector of the end-effectuator 30intercept the x-axis 66 coordinates of the desired trajectory vector. Inthe negative case, in some embodiments, an instruction to move thex-axis 66 can be transmitted and flow is directed to 3035. In theaffirmative case, in some embodiments, flow is directed to block 3035where it is determined if y-axis 68 coordinates of points on the vectorof the end-effectuator 30 intercept the y-axis 68 coordinates of thedesired trajectory vector. In the negative case, in some embodiments, aninstruction to move the y-axis 68 can be transmitted at block 3040 andflow is directed to block 3045. In the affirmative case, in someembodiments, flow is directed to block 3045 in which it is determined ifa Z-tube 50 is being adjusted. In some embodiments, an end-user canconfigure information (i.e., data or metadata) indicative of the Z-tube50 being adjusted to control it to a desired position, for example. Inthe negative case, in some embodiments, flow is terminated. In theaffirmative case, in some embodiments, flow is directed to block 3050where it is determined if the Z-tube 50 is positioned at a predetermineddistance from anatomy. In the affirmative case, in some embodiments,flow terminates and the Z-tube 50 is located at a desired position withrespect to a target location in the anatomy (bone, biopsy site, etc.).In the negative case, in some embodiments, an instruction to move theZ-tube axis 64 is transmitted at block 3055 and the flow is directed toblock 3050. It should be noted that the subject method 3000 in someembodiments, but not all embodiments, may require that movement in eachof the indicated axes (x-axis 66, y-axis 68, Z-tube axis 64, roll 62,and pitch 60) occurs without affecting the other axes earlier in themethod flow. For example, in some embodiments, the y-axis 68 movement atblock 3040 should not cause change in the position of x-axis 66coordinate, which was already checked at block 3025. In someembodiments, the method 3000 can be implemented iteratively in order toreach a desired final position in instances where the axes do not movecompletely independently. In certain embodiments, the method 3000 canaccount for all axis positions nearly simultaneously, and can determinethe exact amount of movement necessary in each axis, and thus it can bemore efficient.

FIG. 31 is a flowchart of a method 3100 for positioning anend-effectuator 30 in space in accordance with one embodiment of theinvention. In some embodiments, the positioning can comprise positioningthe end-effectuator 30 in a first plane (for example, the x-y plane orhorizontal plane) and moving the end-effectuator 30 along a directionsubstantially normal to the first plane. FIGS. 32-33 are flowcharts ofmethods for driving an end-effectuator 30 to a procedure location inaccordance with one embodiment of the invention. As an example, in someembodiments, the procedure location can be a position at the surface ofa bone into which a conventional screw of other piece of hardware is tobe inserted. In some embodiments, the end-effectuator 30 can be fittedwith a guide tube 50 or conventional dilator. In some embodiments, inscenarios in which a Z-tube 50 of a surgical robot 15 comprising theend-effectuator 30 is to be locked and a Z-frame 72 is to be advanced,the method 3200 can be implemented (i.e., executed). In applicationswhere conventional screws are to be driven into bone, the surgeon maywant to move the end-effectuator tip 30, fitted with a guide tube 50 ora conventional dilator, all the way down to the bone. It should beappreciated that in some embodiments, since the first lateral movementoccurs above the level where the patient 18 is lying, the methodsdepicted in FIGS. 31-33 can mitigate the likelihood that the robot 15randomly collides with a patient 18. In some embodiments, the method canalso utilize the robot's Cartesian architecture, and the ease with whicha coordinated movement down the infinite trajectory vector can be made.That is, in some embodiments, to move down this vector, the roll 62 andpitch 60 axes need no adjustment, while the x-axis 66, y-axis 68, andZ-frame 72 axes are moved at a fixed rate. In certain embodiments, foran articular robot 15 to make such a move, the multiple angular axeswould have to be synchronized nonlinearly, with all axes simultaneouslymoved at varying rates.

FIG. 34 illustrates a block diagram of a computer platform 3400 having acomputing device 3401 that enables various features of the invention,and performance of the various methods disclosed herein in accordancewith some embodiments of the invention. In some embodiments, thecomputing device 3401 can control operation of a surgical robot 15 andan optical tracking system 3417 in accordance with aspects describedherein. In some embodiments, control can comprise calibration ofrelative systems of coordinates, generation of planned trajectories,monitoring of position of various units of the surgical robots 15 and/orunits functionally coupled thereto, and implementation of safetyprotocols, and the like. For example, in some embodiments, computingdevice 3401 can embody a programmable controller that can controloperation of a surgical robot 15 as described herein. It should beappreciated that in accordance with some embodiments of the invention,the operating environment 3400 is only an example of an operatingenvironment and is not intended to suggest any limitation as to thescope of use or functionality of operating environment architecture. Insome embodiments of the invention, the operating environment 3400 shouldnot be interpreted as having any dependency or requirement relating toany one functional element or combination of functional elements (e.g.,units, components, adapters, or the like).

The various embodiments of the invention can be operational withnumerous other general purpose or special purpose computing systemenvironments or configurations. Examples of well-known computingsystems, environments, and/or configurations that can be suitable foruse with the systems and methods of the invention comprise personalcomputers, server computers, laptop devices or handheld devices, andmultiprocessor systems. Additional examples comprise mobile devices,programmable consumer electronics, network PCs, minicomputers, mainframecomputers, distributed computing environments that comprise any of theabove systems or devices, and the like.

In some embodiments, the processing effected in the disclosed systemsand methods can be performed by software components. In someembodiments, the disclosed systems and methods can be described in thegeneral context of computer-executable instructions, such as programmodules, being executed by one or more computers, such as computingdevice 3401, or other computing devices. Generally, program modulescomprise computer code, routines, programs, objects, components, datastructures, etc., that perform particular tasks or implement particularabstract data types. The disclosed methods also can be practiced ingrid-based and distributed computing environments where tasks areperformed by remote processing devices that are linked through acommunications network. In a distributed computing environment, programmodules can be located in both local and remote computer storage mediaincluding memory storage devices.

Further, one skilled in the art will appreciate that the systems andmethods disclosed herein can be implemented via a general-purposecomputing device in the form of the computing device 3401. In someembodiments, the components of the computing device 3401 can comprise,but are not limited to, one or more processors 3403, or processing units3403, a system memory 3412, and a system bus 3413 that couples varioussystem components including the processor 3403 to the system memory3412. In some embodiments, in the case of multiple processing units3403, the system can utilize parallel computing.

In general, a processor 3403 or a processing unit 3403 refers to anycomputing processing unit or processing device comprising, but notlimited to, single-core processors; single-processors with softwaremultithread execution capability; multi-core processors; multi-coreprocessors with software multithread execution capability; multi-coreprocessors with hardware multithread technology; parallel platforms; andparallel platforms with distributed shared memory. Additionally oralternatively, a processor 3403 or processing unit 3403 can refer to anintegrated circuit, an application specific integrated circuit (ASIC), adigital signal processor (DSP), a field programmable gate array (FPGA),a programmable logic controller (PLC), a complex programmable logicdevice (CPLD), a discrete gate or transistor logic, discrete hardwarecomponents, or any combination thereof designed to perform the functionsdescribed herein. Processors or processing units referred to herein canexploit nano-scale architectures such as, molecular and quantum-dotbased transistors, switches and gates, in order to optimize space usageor enhance performance of the computing devices that can implement thevarious aspects of the subject invention. In some embodiments, processor3403 or processing unit 3403 also can be implemented as a combination ofcomputing processing units.

The system bus 3413 represents one or more of several possible types ofbus structures, including a memory bus or memory controller, aperipheral bus, an accelerated graphics port, and a processor or localbus using any of a variety of bus architectures. By way of example, sucharchitectures can comprise an Industry Standard Architecture (ISA) bus,a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, aVideo Electronics Standards Association (VESA) local bus, an AcceleratedGraphics Port (AGP) bus, and a Peripheral Component Interconnects (PCI),a PCI-Express bus, a Personal Computer Memory Card Industry Association(PCMCIA), Universal Serial Bus (USB) and the like. The bus 3413, and allbuses specified in this specification and annexed drawings also can beimplemented over a wired or wireless network connection and each of thesubsystems, including the processor 3403, a mass storage device 3404, anoperating system 3405, robotic guidance software 3406, robotic guidancedata storage 3407, a network adapter 3408, system memory 3412, aninput/output interface 3410, a display adapter 3409, a display device3411, and a human machine interface 3402, can be contained within one ormore remote computing devices 3414 a,b at physically separate locations,functionally coupled (e.g., communicatively coupled) through buses ofthis form, in effect implementing a fully distributed system.

In some embodiments, robotic guidance software 3406 can configure thecomputing device 3401, or a processor thereof, to perform the automatedcontrol of position of the local robot 3416 (for example, surgical robot15) in accordance with aspects of the invention. Such control can beenabled, at least in part, by a tracking system 3417. In someembodiments, when the computing device 3401 embodies the computer 100functionally coupled to surgical robot 15, robotic guidance software3406 can configure such computer 100 to perform the functionalitydescribed in the subject invention. In some embodiments, roboticguidance software 3406 can be retained in a memory as a group ofcomputer-accessible instructions (for instance, computer-readableinstructions, computer-executable instructions, or computer-readablecomputer-executable instructions). In some embodiments, the group ofcomputer-accessible instructions can encode the methods of the invention(such as the methods illustrated in FIGS. 24-33 in accordance with someembodiments of the invention). In some embodiments, the group ofcomputer-accessible instructions can encode various formalisms (e.g.,image segmentation) for computer vision tracking. Some embodimentsinclude robotic guidance software 3406 that can include a compiledinstance of such computer-accessible instructions, a linked instance ofsuch computer-accessible instructions, a compiled and linked instance ofsuch computer-executable instructions, or an otherwise executableinstance of the group of computer-accessible instructions.

Some embodiments include robotic guidance data storage 3407 that cancomprise various types of data that can permit implementation (e.g.,compilation, linking, execution, and combinations thereof) of therobotic guidance software 3406. In some embodiments, robotic guidancedata storage 3407 can comprise data associated with intraoperativeimaging, automated adjustment of position of the local robot 3416 and/orremote robot 3422, or the like. In some embodiments, the data retainedin the robotic guidance data storage 3407 can be formatted according toany image data in industry standard format. As illustrated, in someembodiments, a remote tracking system 3424 can enable, at least in part,control of the remote robot 3422. In some embodiments, the informationcan comprise tracking information, trajectory information, surgicalprocedure information, safety protocols, and so forth.

In some embodiments of the invention, the computing device 3401typically comprises a variety of computer readable media. The readablemedia can be any available media that is accessible by the computer 3401and comprises, for example and not meant to be limiting, both volatileand non-volatile media, removable and non-removable media. In someembodiments, the system memory 3412 comprises computer readable media inthe form of volatile memory, such as random access memory (RAM), and/ornon-volatile memory, such as read only memory (ROM). In someembodiments, the system memory 3412 typically contains data (such as agroup of tokens employed for code buffers) and/or program modules suchas operating system 3405 and robotic guidance software 3406 that areimmediately accessible to, and/or are presently operated-on by theprocessing unit 3403. In some embodiments, operating system 3405 cancomprise operating systems such as Windows operating system, Unix,Linux, Symbian, Android, Apple iOS operating system, Chromium, andsubstantially any operating system for wireless computing devices ortethered computing devices. Apple® is a trademark of Apple Computer,Inc., registered in the United States and other countries. iOS® is aregistered trademark of Cisco and used under license by Apple Inc.Microsoft® and Windows® are either registered trademarks or trademarksof Microsoft Corporation in the United States and/or other countries.Android® and Chrome® operating system are a registered trademarks ofGoogle Inc. Symbian® is a registered trademark of Symbian Ltd. Linux® isa registered trademark of Linus Torvalds. UNIX® is a registeredtrademark of The Open Group.

In some embodiments, computing device 3401 can comprise otherremovable/non-removable, volatile/non-volatile computer storage media.As illustrated, in some embodiments, computing device 3401 comprises amass storage device 3404 which can provide non-volatile storage ofcomputer code (e.g., computer-executable instructions),computer-readable instructions, data structures, program modules, andother data for the computing device 3401. For instance, in someembodiments, a mass storage device 3404 can be a hard disk, a removablemagnetic disk, a removable optical disk, magnetic cassettes or othermagnetic storage devices, flash memory cards, CD-ROM, digital versatiledisks (DVD) or other optical storage, random access memories (RAM), readonly memories (ROM), electrically erasable programmable read-only memory(EEPROM), and the like.

In some embodiments, optionally, any number of program modules can bestored on the mass storage device 3404, including by way of example, anoperating system 3405, and tracking software 3406. In some embodiments,each of the operating system 3405 and tracking software 3406 (or somecombination thereof) can comprise elements of the programming and thetracking software 3406. In some embodiments, data and code (for example,computer-executable instructions, patient-specific trajectories, andpatient 18 anatomical data) can be retained as part of tracking software3406 and stored on the mass storage device 3404. In some embodiments,tracking software 3406, and related data and code, can be stored in anyof one or more databases known in the art. Examples of such databasescomprise, DB2®, Microsoft® Access, Microsoft® SQL Server, Oracle®,mySQL, PostgreSQL, and the like. Further examples include membasedatabases and flat file databases. The databases can be centralized ordistributed across multiple systems.

DB2® is a registered trademark of IBM in the United States. Microsoft®,Microsoft® Access®, and Microsoft® SQL Server™ are either registeredtrademarks or trademarks of Microsoft Corporation in the United Statesand/or other countries. Oracle® is a registered trademark of OracleCorporation and/or its affiliates. MySQL® is a registered trademark ofMySQL AB in the United States, the European Union and other countries.PostgreSQL® and the PostgreSQL® logo are trademarks or registeredtrademarks of The PostgreSQL Global Development Group, in the U.S. andother countries.

In some embodiments, an agent (for example, a surgeon or other user, orequipment) can enter commands and information into the computing device3401 via an input device (not shown). Examples of such input devices cancomprise, but are not limited to, a camera (or other detection devicefor non-optical tracking markers), a keyboard, a pointing device (forexample, a mouse), a microphone, a joystick, a scanner (for example, abarcode scanner), a reader device such as a radiofrequencyidentification (RFID) readers or magnetic stripe readers, gesture-basedinput devices such as tactile input devices (for example, touch screens,gloves and other body coverings or wearable devices), speech recognitiondevices, or natural interfaces, and the like. In some embodiments, theseand other input devices can be connected to the processing unit 3403 viaa human machine interface 3402 that is coupled to the system bus 3413.In some other embodiments, they can be connected by other interface andbus structures, such as a parallel port, game port, an IEEE 1394 port(also known as a firewire port), a serial port, or a universal serialbus (USB).

In some further embodiments, a display device 3411 can also befunctionally coupled to the system bus 3413 via an interface, such as adisplay adapter 3409. In some embodiments, the computer 3401 can havemore than one display adapter 3409 and the computer 3401 can have morethan one display device 3411. For example, in some embodiments, adisplay device 3411 can be a monitor, a liquid crystal display, or aprojector. Further, in addition to the display device 3411, someembodiments can include other output peripheral devices that cancomprise components such as speakers (not shown) and a printer (notshown) capable of being connected to the computer 3401 via input/outputInterface 3410. In some embodiments, the input/output interface 3410 canbe a pointing device, either tethered to, or wirelessly coupled to thecomputing device 3410. In some embodiments, any step and/or result ofthe methods can be output in any form to an output device. In someembodiments, the output can be any form of visual representation,including, but not limited to, textual, graphical, animation, audio,tactile, and the like.

In certain embodiments, one or more cameras can be contained orfunctionally coupled to the tracking system 3417, which is functionallycoupled to the system bus 3413 via an input/output interface of the oneor more input/output interfaces 3410. Such functional coupling canpermit the one or more camera(s) to be coupled to other functionalelements of the computing device 3401. In one embodiment, theinput/output interface, at least a portion of the system bus 3413, andthe system memory 3412 can embody a frame grabber unit that can permitreceiving imaging data acquired by at least one of the one or morecameras. In some embodiments, the frame grabber can be an analog framegrabber, a digital frame grabber, or a combination thereof. In someembodiments, where the frame grabber is an analog frame grabber, theprocessor 3403 can provide analog-to-digital conversion functionalityand decoder functionality to enable the frame grabber to operate withmedical imaging data. Further, in some embodiments, the input/outputinterface can include circuitry to collect the analog signal receivedfrom at least one camera of the one or more cameras. In someembodiments, in response to execution by processor 3403, trackingsoftware 3406 can operate the frame grabber to receive imaging data inaccordance with various aspects described herein.

Some embodiments include a computing device 3401 that can operate in anetworked environment (for example, an industrial environment) usinglogical connections to one or more remote computing devices 3414 a,b, aremote robot 3422, and a tracking system 3424. By way of example, insome embodiments, a remote computing device can be a personal computer,portable computer, a mobile telephone, a server, a router, a networkcomputer, a peer device or other common network node, and so on. Inparticular, in some embodiments, an agent (for example, a surgeon orother user, or equipment) can point to other tracked structures,including anatomy of a patient 18, using a remote computing device 3414such as a hand-held probe that is capable of being tracked andsterilized. In some embodiments, logical connections between thecomputer 3401 and a remote computing device 3414 a,b can be made via alocal area network (LAN) and a general wide area network (WAN). In someembodiments, the network connections can be implemented through anetwork adapter 3408. In some embodiments, the network adapter 3408 canbe implemented in both wired and wireless environments. Some embodimentsinclude networking environments that can be conventional and commonplacein offices, enterprise-wide computer networks, intranets. In someembodiments, the networking environments generally can be embodied inwire-line networks or wireless networks (for example, cellular networks,such as third generation (“3G”) and fourth generation (“4G”) cellularnetworks, facility-based networks (for example, femtocell, picocell,wifi networks). In some embodiments, a group of one or more networks3415 can provide such networking environments. In some embodiments ofthe invention, the one or more network(s) can comprise a LAN deployed inan industrial environment comprising the system 1 described herein.

As an illustration, in some embodiments, application programs and otherexecutable program components such as the operating system 3405 areillustrated herein as discrete blocks, although it is recognized thatsuch programs and components reside at various times in differentstorage components of the computing device 3401, and are executed by thedata processor(s) of the computer 100. Some embodiments include animplementation of tracking software 3406 that can be stored on ortransmitted across some form of computer readable media. Any of thedisclosed methods can be performed by computer readable instructionsembodied on computer readable media. Computer readable media can be anyavailable media that can be accessed by a computer. By way of exampleand not meant to be limiting, computer-readable media can comprise“computer storage media,” or “computer-readable storage media,” and“communications media.” “Computer storage media” comprise volatile andnon-volatile, removable and non-removable media implemented in anymethods or technology for storage of information such as computerreadable instructions, data structures, program modules, or other data.In some embodiments of the invention, computer storage media comprises,but is not limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disks (DVD) or other opticalstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other medium which can be used tostore the desired information and which can be accessed by a computer.

As described herein, some embodiments include the computing device 3401that can control operation of local robots 3416 and/or remote robots3422. Within embodiments in which the local robot 3416 or the remoterobot 3422 are surgical robots 15, the computing device 3401 can executerobotic guidance software 3407 to control such robots 3416, 3422, 15. Insome embodiments, the robotic guidance software 3407, in response toexecution, can utilize trajectories (such as, tip and tail coordinates)that can be planned and/or configured remotely or locally. In anadditional or alternative aspect, in response to execution, the roboticguidance software 3407 can implement one or more of the methodsdescribed herein in a local robot's computer or a remote robot'scomputer to cause movement of the remote robot 15 or the local robot 15according to one or more trajectories.

In some embodiments, the computing device 3401 can enable pre-operativeplanning of the surgical procedure. In some embodiments, the computingdevice 3401 can permit spatial positioning and orientation of a surgicaltool (for example, instrument 35) during intraoperative procedures. Insome further embodiments, the computing device 3401 can enable openprocedures. In some other embodiments, the computing device 3401 canenable percutaneous procedures. In certain embodiments, the computingdevice 3401 and the robotic guidance software 3407 can embody a 3Dtracking system 3417 to simultaneously monitor the positions of thedevice and the anatomy of the patient 18. In some embodiments, the 3Dtracking system 3417 can be configured to cast the patient's anatomy andthe end-effectuator 30 in a common coordinate system.

In some embodiments, the computing device 3401 can access (i.e., load)image data from a conventional static storage device. In someembodiments, the computing device 3401 can permit a 3D volumetricrepresentation of patient 18 anatomy to be loaded into memory (forexample, system memory 3412) and displayed (for example, via displaydevice 3411). In some embodiments, the computing device 3401, inresponse to execution of the robotic guidance software 3407 can enablenavigation through the 3D volume representation of a patient's anatomy.

In some embodiments, the computing device 3401 can operate with aconventional power source required to offer the device for sale in thespecified country. A conventional power cable that supplies power can bea sufficient length to access conventional hospital power outlets. Insome embodiments, in the event of a power loss, the computing device3401 can hold the current end-effectuator 30 in a position unless anagent (for example, a surgeon or other user, or equipment) manuallymoves the end-effectuator 30.

In some embodiments, the computing device 3401 can monitor systemphysical condition data. In some embodiments, the computing device 3401can report to an operator (for example, a surgeon) each of the physicalcondition data and indicate an out-of-range value. In some embodiments,the computing device 3401 can enable entry and storage of manufacturingcalibration values for end-effectuator 30 positioning using, forexample, the input/output interface 3410. In some embodiments, thecomputing device 3401 can enable access to manufacturing calibrationvalues by an agent (for example, a surgeon or other user, or equipment)authenticated to an appropriate access level. In some embodiments, thedata can be retained in robotic guidance data storage 3407, or can beaccessed via network(s) 3415 when the data is retained in a remotecomputing device 3414 a.

In some embodiments, the computing device 3401 can render (using forexample display device 3411) a technical screen with a subset of theend-effectuator 30 positioning calibration and system health data. Theinformation is only accessible to an agent (for example, a surgeon orother user, or equipment) authenticated to an appropriate level.

In some embodiments, the computing device 3401 can enable fieldcalibration of end-effectuator 30 positioning only by an agent (forexample, a surgeon or other user, or equipment) authenticated to anappropriate access level. In some embodiments, the computing device 3401can convey the status of local robot 3416, remote robot 3422, and/orother device being locked in position using a visual or aural alert.

In some further embodiments, the computing device 3401 can include anemergency stop control that upon activation, disables power to thedevice's motors 160 but not to the processor 3403. In some embodiments,the emergency stop control can be accessible by the operator ofcomputing device 3401. In some embodiments, the computing device 3401can monitor the emergency stop status and indicate to the operator thatthe emergency stop has been activated.

In some other embodiments, the computing device 3401 can be operated ina mode that permits manual positioning of the end-effectuator 30. Insome embodiments, the computing device 3401 can boot directly to anapplication representing the robotic guidance software 3406. In someembodiments, computing device 3401 can perform a system check prior toeach use. In scenarios in which the system check fails, the computingdevice 3401 can notify an operator.

In some embodiments, the computing device 3401 can generate an indicatorfor reporting system status. Some embodiments include the computingdevice 3401 that can minimize or can mitigate delays in processing, andin the event of a delay in processing, notify an agent (for example, asurgeon or other user, or equipment). For example, in some embodiments,a delay may occur while a system scan is being performed to assesssystem status, and consequently the computing device 3401 can schedule(for example, generate a process queue) system scans to occur at lowusage times. In some embodiments, a system clock of the computing device3401 can be read before and after key processes to assess the length oftime required to complete computation of a process. In some embodiments,the actual time to complete the process can be compared to the expectedtime. In some embodiments, if a discrepancy is found to be beyond anacceptable tolerance, the agent can be notified, and/or concurrentlyrunning non-essential computational tasks can be terminated. In oneembodiment, a conventional system clock (not shown) can be part ofprocessor 3403.

In some embodiments, the computing device 3401 can generate a displaythat follows a standardized workflow. In some embodiments, the computingdevice 3401 can render or ensure that text is rendered in a font ofsufficient size and contrast to be readable from an appropriatedistance. In some embodiments, the computing device 3401 can enable anoperator to locate the intended position of a surgical implant or tool.

In some further embodiments, the computing device 3401 can determine therelative position of the end-effectuator 30 to the anatomy of thepatient 18. For example, to at least such end, the computing device 3401can collect data the optical tracking system 3417, and can analyze thedata to generate data indicative of such relative position. In someembodiments, the computing device 3401 can indicate the end-effectuator30 position and orientation. In some embodiments, the computing device3401 can enable continuous control of end-effectuator 30 positionrelative to the anatomy of a patient 18.

In some embodiments, the computing device 3401 can enable an agent (forexample, a surgeon or other user, or equipment) to mark the intendedposition of a surgical implant or tool (for example, instrument 35). Insome embodiments, the computing device 3401 can allow the position andorientation of a conventional hand-held probe (or an instrument 35) tobe displayed overlaid on images of the patient's anatomy.

In some embodiments, the computing device 3401 can enable an agent (forexample, a surgeon or other user, or equipment) to position conventionalsurgical screws. In some embodiments, the computing device 3401 canenable selection of the length and diameter of surgical screws by theagent. In yet another aspect, the computing device can ensure that therelative position, size and scale of screws are maintained on thedisplay 3411 when in graphical representation. In some embodiments, thecomputing device 3401 can verify screw path plans against an operationenvelope and reject screw path plans outside this envelope. In stillanother aspect, the computing device 3401 can enable hiding of agraphical screw representation.

In some embodiments, the computing device 3401 can enable a functionthat allows the current view to be stored. In some embodiments, thecomputing device 3401 can enable a view reset function that sets thecurrent view back to a previously stored view. In some embodiments, thecomputing device 3401 can enable an authentication based tiered accesssystem. In some embodiments, the computing device 3401 can log and storesystem activity. In some embodiments, the computing device 3401 canenable access to the system activity log to an agent authorized to anappropriate level. In some embodiments, the computing device 3401 canenable entry and storage of patient 18 data.

In some embodiments, the computing device 3401 can enable theappropriate disposition of patient 18 data and/or procedure data. Forexample, in a scenario in which such data are being collected forresearch, the computing device 3401 can implement de-identification ofthe data in order to meet patient 18 privacy requirements. In someembodiments, the de-identification can be implemented in response toexecution of computer-executable instruction(s) retained in memory 3412or any other memory accessible to the computing device 3401. In someembodiments, the de-identification can be performed automatically beforethe patient 18 data and/or procedure data are sent to a repository orany other data storage (including mass storage device 3404, forexample). In some embodiments, indicia (e.g., a dialog box) can berendered (for example, at display device 3411) to prompt an agent (e.g.,machine or human) to permanently delete patient 18 data and/or proceduredata at the end of a procedure.

FIG. 11 shows a flow chart diagram 1100 for general operation of therobot 15 according to some embodiments is shown. In some embodiments, atstep 210, the local positioning system (herein referred to as “LPS”)establishes a spatial coordinate measuring system for the room 10 wherethe invasive procedure is to occur; in other words, the LPS iscalibrated. In some embodiments, in order to calibrate the LPS, aconventional mechanical fixture that includes a plurality of attachedcalibrating transmitters 120 is placed within the room 10 wherepositioning sensors 12 are located. In some embodiments of theinvention, at least three calibrating transmitters 120 are required, butany number of calibrating transmitters 120 above three is within thescope of the invention. Also, in some embodiments, at least threepositioning sensors 12 are required, but any number of positioningsensors 12 above three is also within the scope of the invention, andthe accuracy of the system is increased with the addition of morepositioning sensors.

In some embodiments, the distance between each of the calibratingtransmitters 120 relative to each other is measured prior to calibrationstep 210. Each calibrating transmitter 120 transmits RF signals on adifferent frequency so that the positioning sensors 12 can determinewhich transmitter 120 emitted a particular RF signal. In someembodiments, the signal of each of these transmitters 120 is received bypositioning sensors 12. In some embodiments, since the distance betweeneach of the calibrating transmitters 120 is known, and the sensors 12can identify the signals from each of the calibrating transmitters 120based on the known frequency, using time of flight calculation, thepositioning sensors 12 are able to calculate the spatial distance ofeach of the positioning sensors 12 relative to each other. The system 1is now calibrated. As a result, in some embodiments, the positioningsensors 12 can now determine the spatial position of any new RFtransmitter 120 introduced into the room 10 relative to the positioningsensors 12.

In some embodiments, a step 220 a in which a 3D anatomical image scan,such as a CT scan, is taken of the anatomical target. Any 3D anatomicalimage scan may be used with the surgical robot 15 and is within thescope of the present invention. In some embodiments, at step 230, thepositions of the RF transmitters 120 tracking the anatomical target areread by positioning sensors 110. These transmitters 120 identify theinitial position of the anatomical target and any changes in positionduring the procedure. In some embodiments, if any RF transmitters 120must transmit through a medium that changes the RF signalcharacteristics, then the system will compensate for these changes whendetermining the transmitter's 120 position.

In some embodiments, at step 240, the positions of the transmitters 120on the anatomy are calibrated relative to the LPS coordinate system. Inother words, the LPS provides a reference system, and the location ofthe anatomical target is calculated relative to the LPS coordinates. Insome embodiments, to calibrate the anatomy relative to the LPS, thepositions of transmitters 120 affixed to the anatomical target arerecorded at the same time as positions of temporary transmitters 120placed on precisely known anatomical landmarks also identified on theanatomical image. This calculation is performed by a computer 100.

In some embodiments, at step 250, the positions of the RF transmitters120 that track the anatomical target are read. Since the locations ofthe transmitters 120 on the anatomical target have already beencalibrated, the system can easily determine if there has been any changein position of the anatomical target. Some embodiments include a step260, where the positions of the transmitters 120 on the surgicalinstrument 35 are read. The transmitters 120 may be located on thesurgical instrument 35 itself, and/or there may be transmitters 120attached to various points of the surgical robot 15.

In some embodiments of the invention, the surgical robot 15 can alsoinclude a plurality of attached conventional position encoders that helpdetermine the position of the surgical instrument 35. In someembodiments, the position encoders can be devices used to generate anelectronic signal that indicates a position or movement relative to areference position. In some other embodiments, a position signal can begenerated using conventional magnetic sensors, conventional capacitivesensors, and conventional optical sensors.

In some embodiments, position data read from the position encoders maybe used to determine the position of the surgical instrument 35 used inthe procedure. In some embodiments, the data may be redundant ofposition data calculated from RF transmitters 120 located on thesurgical instrument 35. Therefore, in some embodiments, position datafrom the position encoders may be used to double-check the positionbeing read from the LPS.

In some embodiments, at step 270, the coordinates of the positions ofthe transmitters 120 on the surgical instrument 35, and/or the positionsread from the position encoders, is calibrated relative to theanatomical coordinate system. In other words, in some embodiments, theposition data of the surgical instrument 35 is synchronized into thesame coordinate system as the patient's anatomy. In some embodiments,this calculation is performed automatically by the computer 100 sincethe positions of the transmitters 120 on the anatomical target and thepositions of the transmitters 120 on the surgical instrument 35 are inthe same coordinate system, and the positions of the transmitters 120 onthe anatomical target are already calibrated relative to the anatomy.

In some embodiments, at step 280, the computer 100 superimposes arepresentation of the location calculated in step 270 of the surgicaldevice on the 3D anatomical image of the patient 18 taken in step 220.In some embodiments, the superimposed image can be displayed to anagent. In some embodiments, at step 290, the computer 100 sends theappropriate signals to the motors 160 to drive the surgical robot 15. Insome embodiments, if the agent preprogrammed a trajectory, then therobot 15 is driven so that the surgical instrument 35 follows thepreprogrammed trajectory if there is no further input from the agent. Insome embodiments, if there is agent input, then the computer 100 drivesthe robot 15 in response to the agent input.

In some embodiments, at step 295, the computer 100 determines whetherthe anatomy needs to be recalibrated. In some embodiments, the agent maychoose to recalibrate the anatomy, in which case the computer 100responds to agent input. Alternatively, in some embodiments, thecomputer 100 may be programmed to recalibrate the anatomy in response tocertain events. For instance, in some embodiments, the computer 100 maybe programmed to recalibrate the anatomy if the RF transmitters 120 onthe anatomical target indicate that the location of the anatomicaltarget has shifted relative to the RF transmitters 120 (i.e. thisspatial relationship should be fixed). In some embodiments, an indicatorthat the anatomical target location has shifted relative to thetransmitters 120 is if the computer 100 calculates that the surgicalinstrument 35 appears to be inside bone when no drilling or penetrationis actually occurring.

In some embodiments, if the anatomy needs to be calibrated, then theprocess beginning at step 230 is repeated. In some embodiments, if theanatomy does not need to be recalibrated, then the process beginning atstep 250 is repeated. In some embodiments, at any time during theprocedure, certain fault conditions may cause the computer 100 tointerrupt the program and respond accordingly. For instance, in someembodiments, if the signal from the RF transmitters 120 cannot be read,then the computer 100 may be programmed to stop the movement of therobot 15, or remove the surgical instrument 35 from the patient 18.Another example of a fault condition is if the robot 15 encounters aresistance above a preprogrammed tolerance level.

FIG. 12 shows a flow chart diagram 1200 for a closed screw/needleinsertion procedure according to an embodiment of the invention isshown. In a closed pedicle screw insertion procedure, in someembodiments, the robot 15 holds a guide tube 50 adjacent to the patient18 in the correct angular orientation at the point where a conventionalpedicle screw is to be inserted through the tissue and into the bone ofthe patient 18.

In some embodiments, the distance between each of the calibratingtransmitters 120 relative to each other is measured prior to calibrationstep 300. In some embodiments, each calibrating transmitter 120transmits RF signals on a different frequency so the positioning sensors12 can determine which transmitter 120 emitted a particular RF signal.In some embodiments, the signal of each of these transmitters 120 isreceived by positioning sensors 12. Since the distance between each ofthe calibrating transmitters 120 is known, and the sensors 12 canidentify the signals from each of the calibrating transmitters 120 basedon the known frequency, using time of flight calculation, in someembodiments, the positioning sensors 12 are able to calculate thespatial distance of each of the positioning sensors 12 relative to eachother. The system 1 is now calibrated. As a result, in some embodiments,the positioning sensors 12 can now determine the spatial position of anynew RF transmitter 120 introduced into the room 10 relative to thepositioning sensors 12.

In some embodiments, at step 310, a 3D anatomical image scan, such as aCT scan, is taken of the anatomical target. Any 3D anatomical image scanmay be used with the surgical robot 15 and is within the scope of thepresent invention. In some embodiments, at step 320, the operatorselects a desired trajectory and insertion point of the surgicalinstrument 35 on the anatomical image captured at step 310. In someembodiments, the desired trajectory and insertion point is programmedinto the computer 100 so that the robot 15 can drive a guide tube 50automatically to follow the trajectory. In some embodiments, at step330, the positions of the RF transmitters 120 tracking the anatomicaltarget are read by positioning sensors 110. In some embodiments, thesetransmitters 120 identify the initial position of the anatomical targetand any changes in position during the procedure.

In some embodiments, if any RF transmitters 120 must transmit through amedium that changes the RF signal characteristics, the system willcompensate for these changes when determining the transmitter's 120position. In some embodiments, at step 340, the positions of thetransmitters 120 on the anatomy are calibrated relative to the LPScoordinate system. In other words, the LPS provides a reference system,and the location of the anatomical target is calculated relative to theLPS coordinates. In some embodiments, to calibrate the anatomy relativeto the LPS, the positions of transmitters 120 affixed to the anatomicaltarget are recorded at the same time as positions of temporarytransmitters 120 on precisely known anatomical landmarks also identifiedon the anatomical image. This calculation is performed by a computer.

In some embodiments, at step 350, the positions of the RF transmitters120 that track the anatomical target are read. Since the locations ofthe transmitters 120 on the anatomical target have already beencalibrated, in some embodiments, the system can easily determine ifthere has been any change in position of the anatomical target. In someembodiments, at step 360, the positions of the transmitters 120 on thesurgical instrument 35 are read. In some embodiments, the transmitters120 may be located on the surgical instrument 35, and/or attached tovarious points of the surgical robot 15.

In some embodiments, at step 370, the coordinates of the positions ofthe transmitters 120 on the surgical instrument 35, and/or the positionsread from the position encoders, are calibrated relative to theanatomical coordinate system. In other words, the position data of thesurgical instrument 35 is synchronized into the same coordinate systemas the anatomy. This calculation is performed automatically by thecomputer 100 since the positions of the transmitters 120 on theanatomical target and the positions of the transmitters 120 on thesurgical instrument 35 are in the same coordinate system and thepositions of the transmitters 120 on the anatomical target are alreadycalibrated relative to the anatomy.

In some embodiments, at step 380, the computer 100 superimposes arepresentation of the location calculated in step 370 of the surgicaldevice on the 3D anatomical image of the patient 18 taken in step 310.The superimposed image can be displayed to the user. In someembodiments, at step 390, the computer 100 determines whether the guidetube 50 is in the correct orientation and position to follow thetrajectory planned at step 320. If it is not, then step 393 is reached.If it is in the correct orientation and position to follow thetrajectory, then step 395 is reached.

In some embodiments, at step 393, the computer 100 determines whatadjustments it needs to make in order to make the guide tube 50 followthe preplanned trajectory. The computer 100 sends the appropriatesignals to drive the motors 160 in order to correct the movement of theguide tube. In some embodiments, at step 395, the computer 100determines whether the procedure has been completed. If the procedurehas not been completed, then the process beginning at step 350 isrepeated.

In some embodiments, at any time during the procedure, certain faultconditions may cause the computer 100 to interrupt the program andrespond accordingly. For instance, if the signal from the RFtransmitters 120 cannot be read, then the computer 100 may be programmedto stop the movement of the robot 15 or lift the guide tube 50 away fromthe patient 18. Another example of a fault condition is if the robot 15encounters a resistance above a preprogrammed tolerance level. Anotherexample of a fault condition is if the RF transmitters 120 on theanatomical target shift so that actual and calculated positions of theanatomy no longer match. One indicator that the anatomical targetlocation has shifted relative to the transmitters 120 is if the computer100 calculates that the surgical instrument 35 appears to be inside bonewhen no drilling or penetration is actually occurring.

In some embodiments, the proper response to each condition may beprogrammed into the system, or a specific response may beuser-initiated. For example, the computer 100 may determine that inresponse to an anatomy shift, the anatomy would have to be recalibrated,and the process beginning at step 330 should be repeated. Alternatively,a fault condition may require the flowchart to repeat from step 300.Another alternative is the user may decide that recalibration from step330 is desired, and initiate that step himself.

Referring now to FIG. 13, a flow chart diagram 1300 for a safe zonesurgical procedure performed using the system described herein is shownin accordance with some embodiments of the invention. In a safe zonesurgical procedure, there is a defined safe zone around the surgicalarea within which the surgical device must stay. The physician manuallycontrols the surgical device that is attached to the end-effectuator 30of the surgical robot 15. If the physician moves the surgical deviceoutside of the safe zone, then the surgical robot 15 stiffens the arm 23so that the physician cannot move the instrument 35 in any directionthat would move the surgical instrument 35 outside the safe zone.

In some embodiments, the distance between each of the calibratingtransmitters 120 relative to each other is measured prior to calibrationstep 400. Each calibrating transmitter 120 transmits RF signals on adifferent frequency so the positioning sensors 12 can determine whichtransmitter 120 emitted a particular RF signal. The signal of each ofthese transmitters 120 is received by positioning sensors 12. Since thedistance between each of the calibrating transmitters 120 is known, andthe sensors 12 can identify the signals from each of the calibratingtransmitters 120 based on the known frequency, the positioning sensors12 are able to calculate, using time of flight calculation, the spatialdistance of each of the positioning sensors 12 relative to each other.The system 1 is now calibrated. As a result, the positioning sensors 12can now determine the spatial position of any new RF transmitter 120introduced into the room 10 relative to the positioning sensors 12.

In some embodiments, at step 410, a 3D anatomical image scan, such as aCT scan, is taken of the anatomical target. Any 3D anatomical image scanmay be used with the surgical robot 15 and is within the scope of thepresent invention. In some embodiments, at step 420, the operator inputsa desired safe zone on the anatomical image taken in step 410. In anembodiment of the invention, the operator uses an input to the computer100 to draw a safe zone on a CT scan taken of the patient 18 in step410. In some embodiments, at step 430, the positions of the RFtransmitters 120 tracking the anatomical target are read by positioningsensors. These transmitters 120 identify the initial position of theanatomical target and any changes in position during the procedure. Insome embodiments, if any RF transmitters 120 must transmit through amedium that changes the RF signal characteristics, then the system willcompensate for these changes when determining the transmitter's 120position.

In some embodiments, at step 440, the positions of the transmitters 120on the anatomy are calibrated relative to the LPS coordinate system. Inother words, the LPS provides a reference system, and the location ofthe anatomical target is calculated relative to the LPS coordinates. Tocalibrate the anatomy relative to the LPS, the positions of transmitters120 affixed to the anatomical target are recorded at the same time aspositions of temporary transmitters 120 on precisely known landmarks onthe anatomy that can also be identified on the anatomical image. Thiscalculation is performed by a computer 100. In some embodiments, at step450, the positions of the RF transmitters 120 that track the anatomicaltarget are read. Since the locations of the transmitters 120 on theanatomical target have already been calibrated, the system can easilydetermine if there has been any change in position of the anatomicaltarget.

In some embodiments, at step 460, the positions of the transmitters 120on the surgical instrument 35 are read. The transmitters 120 may belocated on the surgical instrument 35 itself, and/or there may betransmitters 120 attached to various points of the surgical robot 15. Insome embodiments, at step 470, the coordinates of the positions of thetransmitters 120 on the surgical instrument 35, and/or the positionsread from the position encoders, are calibrated relative to theanatomical coordinate system. In other words, the position data of thesurgical instrument 35 is synchronized into the same coordinate systemas the anatomy. This calculation is performed automatically by thecomputer 100 since the positions of the transmitters 120 on theanatomical target and the positions of the transmitters 120 on thesurgical instrument 35 are in the same coordinate system and thepositions of the transmitters 120 on the anatomical target are alreadycalibrated relative to the anatomy.

In some embodiments, at step 480, the computer 100 superimposes arepresentation of the location calculated in step 470 of the surgicaldevice on the 3D anatomical image of the patient 18 taken in step 410.In some embodiments, the superimposed image can be displayed to theuser. In some embodiments, at step 490, the computer 100 determineswhether the surgical device attached to the end-effectuator 30 of thesurgical robot 15 is within a specified range of the safe zone boundary(for example, within 1 millimeter of reaching the safe zone boundary).In some embodiments, if the end-effectuator 30 is almost to theboundary, then step 493 is reached. In some embodiments, if it is wellwithin the safe zone boundary, then step 495 is reached.

In some embodiments, at step 493, the computer 100 stiffens the arm ofthe surgical robot 15 in any direction that would allow the user to movethe surgical device closer to the safe zone boundary. In someembodiments, at step 495, the computer 100 determines whether theanatomy needs to be recalibrated. In some embodiments, the user maychoose to recalibrate the anatomy, in which case the computer 100responds to user input. Alternatively, in some embodiments, the computer100 may be programmed to recalibrate the anatomy in response to certainevents. For instance, in some embodiments, the computer 100 may beprogrammed to recalibrate the anatomy if the RF transmitters 120 on theanatomical target indicate that the location of the anatomical targethas shifted relative to the RF transmitters 120 (i.e. this spatialrelationship should be fixed.) In some embodiments, an indicator thatthe anatomical target location has shifted relative to the transmitters120 is if the computer 100 calculates that the surgical instrument 35appears to be inside bone when no drilling or penetration is actuallyoccurring.

In some embodiments, if the anatomy needs to be calibrated, then theprocess beginning at step 430 is repeated. In some embodiments, if theanatomy does not need to be recalibrated, then the process beginning atstep 450 is repeated. In some embodiments, at any time during theprocedure, certain fault conditions may cause the computer 100 tointerrupt the program and respond accordingly. For instance, in someembodiments, if the signal from the RF transmitters 120 cannot be read,then the computer 100 may be programmed to stop the movement of therobot 15 or remove the surgical instrument 35 from the patient 18.Another example of a fault condition is if the robot 15 encounters aresistance above a preprogrammed tolerance level.

Referring now to FIG. 14, a flow chart diagram 1400 for a conventionalflexible catheter or wire insertion procedure according to an embodimentof the invention is shown. Catheters are used in a variety of medicalprocedures to deliver medicaments to a specific site in a patient'sbody. Often, delivery to a specific location is needed so a targeteddiseased area can then be treated. Sometimes instead of inserting thecatheter directly, a flexible wire is first inserted, over which theflexible catheter can be slid.

In some embodiments, the distance between each of the calibratingtransmitters 120 relative to each other is measured prior to calibrationstep 500. In some embodiments, each calibrating transmitter 120transmits RF signals on a different frequency so the positioning sensors12, 110 can determine which transmitter 120 emitted a particular RFsignal. In some embodiments, the signal from each of these transmitters120 is received by positioning sensors 12, 110. Since the distancebetween each of the calibrating transmitters 120 is known, and thesensors can identify the signals from each of the calibratingtransmitters 120 based on the known frequency, in some embodiments,using time of flight calculation, the positioning sensors 12, 110 areable to calculate the spatial distance of each of the positioningsensors 12, 110 relative to each other. The system is now calibrated. Asa result, in some embodiments, the positioning sensors 12, 110 can nowdetermine the spatial position of any new RF transmitter 120 introducedinto the room 10 relative to the positioning sensors 12, 110.

In some embodiments, at step 510, reference needles that contain the RFtransmitters 120 are inserted into the body. The purpose of theseneedles is to track movement of key regions of soft tissue that willdeform during the procedure or with movement of the patient 18.

In some embodiments, at step 520, a 3D anatomical image scan (such as aCT scan) is taken of the anatomical target. Any 3D anatomical image scanmay be used with the surgical robot 15 and is within the scope of thepresent invention. In some embodiments, the anatomical image capturearea includes the tips of the reference needles so that theirtransmitters' 120 positions can be determined relative to the anatomy.In some embodiments, at step 530, the RF signals from the catheter tipand reference needles are read.

In some embodiments, at step 540, the position of the catheter tip iscalculated. Because the position of the catheter tip relative to thereference needles and the positions of the reference needles relative tothe anatomy are known, the computer 100 can calculate the position ofthe catheter tip relative to the anatomy. In some embodiments, at step550, the superimposed catheter tip and the shaft representation isdisplayed on the anatomical image taken in step 520. In someembodiments, at step 560, the computer 100 determines whether thecatheter tip is advancing toward the anatomical target. If it is notmoving to the anatomical target, then step 563 is reached. If it iscorrectly moving, then step 570 is reached.

In some embodiments, at step 563, the robot 15 arm is adjusted to guidethe catheter tip in the desired direction. If the anatomy needs to becalibrated, then in some embodiments, the process beginning at step 520is repeated. If the anatomy does not need to be recalibrated, then theprocess beginning at step 540 is repeated. In some embodiments, at step570, the computer 100 determines whether the procedure has beencompleted. If the procedure has not been completed, then the processbeginning at step 540 is repeated.

In some embodiments, at any time during the procedure, certain faultconditions may cause the computer 100 to interrupt the program andrespond accordingly. For instance, in some embodiments, if the signalfrom the RF transmitter's 120 cannot be read, then the computer 100 maybe programmed to stop the movement of the robot 15 or remove theflexible catheter from the patient 18. Another example of a faultcondition is if the robot 15 encounters a resistance above apreprogrammed tolerance level. A further example of a fault condition isif the RF transmitter's 120 on the anatomical target indicate thelocation of the anatomical target shift so that actual and calculatedpositions of the anatomy no longer match. In some embodiments, oneindicator that the anatomical target location has shifted relative tothe transmitter's 120 is if the computer 100 calculates that thesurgical instrument 35 appears to be inside bone when no drilling orpenetration is actually occurring.

In some embodiments, the proper response to each condition may beprogrammed into the system, or a specific response may beuser-initiated. For example, in some embodiments, the computer 100 maydetermine that in response to an anatomy shift, the anatomy would haveto be recalibrated, and the process beginning at step 520 should berepeated. Alternatively, in some embodiments, a fault condition mayrequire the flowchart to repeat from step 500. In other embodiments, theuser may decide that recalibration from step 520 is desired, andinitiate that step himself.

Referring now to FIGS. 15A & 15B, screenshots of software for use withthe described system is provided in accordance with some embodiments ofthe invention. The software provides the method to select the targetarea of surgery, plan the surgical path, check the planned trajectory ofthe surgical path, synchronize the medical images to the positioningsystem and precisely control the positioning system during surgery. Thesurgical positioning system and navigation software includes an opticalguidance system or RF Local Positioning System (RF-LPS), which are incommunication with the positioning system.

FIG. 15A shows a screen shot 600 of the selection step for a user usinga software program as described herein in accordance with someembodiments of the invention. Screen shot 600 includes windows 615, 625,and 635, which show a 3D anatomical image of surgical target 630 ondifferent planes. In this step, the user selects the appropriate 3Dimage corresponding to anatomical location of where the procedure willoccur. In some embodiments, the user uses a graphic control to changethe perspective of the image in order to more easily view the image fromdifferent angles. In some embodiments, the user can view the surgicaltarget 630 within separate coordinated views for each of the x-axis,y-axis and z-axis coordinates for each anatomical location in thedatabase in each window 615, 625 and 635, respectively.

In some embodiments, after selecting the desired 3D image of thesurgical target 630, the user will plan the appropriate trajectory onthe selected image. In some embodiments, an input control is used withthe software in order to plan the trajectory of the surgical instrument35. In one embodiment of the invention, the input control is in theshape of a biopsy needle 8110 for which the user can plan a trajectory.

FIG. 15B shows a screen shot 650 during the medical procedure inaccordance with some embodiments of the invention. In some embodiments,the user can still view the anatomical target 630 in different x-axis,y-axis and z-axis coordinate views on windows 615, 625, and 635. Asshown in screen shot 650, the user can see the planned trajectory line670 in multiple windows 615 and 625. The actual trajectory and locationof the surgical instrument 35 is superimposed on the image (shown asline segment 660). In some embodiments, the actual trajectory andlocation of the surgical instrument 35 is dynamically updated anddisplayed, and is shown as a line segment 660. In some otherembodiments, the actual trajectory and location of the surgicalinstrument 35 could be shown as a trapezoid or a solid central linesurrounded by a blurred or semi-transparent fringe to represent theregion of uncertainty. In some embodiments (under perfect conditionswith no bending of the surgical instrument as it enters tissues) thetracking system 3417 and robot 15 encoders calculate that the surgicalinstrument 35 should be located at the solid line or center of thetrapezoid. In some embodiments, due to bending of the instrument 35 thatmight occur if tissues of different densities are crossed, there mightbe bending, with the amount of reasonably expected bending displayed asthe edges of the trapezoid or fringe. In some embodiments, the size ofthis edge could be estimated knowing the stiffness and tolerance of thesurgical instrument 35 within the guide tube 50, and by usingexperimental data collected for the same instrument 35 under previouscontrolled conditions. In some embodiments, displaying this region ofuncertainty helps prevent the user from expecting the system to delivera tool to a target trajectory with a physically impossible level ofprecision.

As described earlier, in some embodiments, the surgical robot 15 can beused with alternate guidance systems other than an LPS. In someembodiments, the surgical robot system 1 can comprise a targetingfixture 690 for use with a guidance system. In some embodiments, onetargeting fixture 690 comprises a calibration frame 700, as shown inFIGS. 20A-20E. A calibration frame 700 can be used in connection withmany invasive procedures; for example, it can be used in thoracolumbarpedicle screw insertion in order to help achieve a more accuratetrajectory position. In some embodiments, the use of the calibrationframe 700 can simplify the calibration procedure. In some embodiments ofthe invention, the calibration frame 700 can be temporarily affixed tothe skin of a patient 18 surrounding a selected site for a medicalprocedure, and then the medical procedure can be performed through awindow defined by the calibration frame.

As shown in FIGS. 20A and 20B, in some embodiments of the invention, thecalibration frame 700 can comprise a combination of radio-opaque markers730 and infrared, or “active,” markers 720. In some embodiments, theradio-opaque markers 730 can be located within the CT scan region 710,and the active markers 720 can be located outside of the CT scan region710. In some embodiments, a surgical field 17 (i.e., the area where theinvasive procedure will occur) can be located within the perimetercreated by radio-opaque markers 730. In some embodiments, the actualdistances of the radio-opaque 730 and active markers 720 relative toeach other can be measured from a high-precision laser scan of thecalibration frame. Additionally or alternatively, in some embodiments,the actual relative distances can be measured by actively measuring thepositions of active markers 720 while nearly simultaneously orsimultaneously pointing with a pointing device, such as a conventionaldigitizing probe, to one or more locations on the surface of theradio-opaque markers 730. In certain embodiments, digitizing probes cancomprise active markers 720 embedded in a rigid body 690 and a tipextending from the rigid body.

In some embodiments, through factory calibration or other calibrationmethod(s), such as pivoting calibration, the location of the probe tiprelative to the rigid body of the probe can be established. In someembodiments, it can then be possible to calculate the location of theprobe's tip from the probe's active markers 720. In some embodiments,for a probe with a concave tip that is calibrated as previouslydescribed, the point in space returned during operation of the probe canrepresent a point distal to the tip of the probe at the center of thetip's concavity. Therefore, in some embodiments, when a probe(configured with a concave tip and calibrated to marker 730 of the sameor nearly the same diameter as the targeting fixture's radio-opaquemarker 730) is touched to the radio-opaque marker 730, the probe canregister the center of the sphere. In some embodiments, active markers720 can also be placed on the robot in order to monitor a position ofthe robot 15 and calibration frame 700 simultaneously or nearlysimultaneously. In some embodiments, the calibration frame 700 ismounted on the patient's skin before surgery/biopsy, and will staymounted during the entire procedure. Surgery/biopsy takes place throughthe center of the frame 700.

In some embodiments, when the region of the plate with the radio-opaquemarkers 730 is scanned intra-operatively or prior to surgery (forexample, using a CT scanner), the CT scan contains both the medicalimages of the patient's bony anatomy, and spherical representations ofthe radio-opaque markers 730. In some embodiments, software is used todetermine the locations of the centers of the markers 730 relative tothe trajectories defined by the surgeon on the medical images. Becausethe pixel spacing of the CT scan can be conveyed within encoded headersin DICOM images, or can be otherwise available to a tracking software(for example, the robotic guidance software 3406), it can, in someembodiments, be possible to register locations of the centers of themarkers 730 in Cartesian coordinates (in millimeters, for example, orother length units). In some embodiments, it can be possible to registerthe Cartesian coordinates of the tip and tail of each trajectory in thesame length units.

In some embodiments, because the system knows the positions of thetrajectories relative to the radio-opaque markers 730, the positions ofthe radio-opaque markers 730 relative to the active markers 720, and thepositions of the active markers 720 on the calibration frame 700relative to the active markers on the robot 15 (not shown), the systemhas all information necessary to position the robot's end-effectuator 30relative to the defined trajectories.

In some other embodiments of the invention, the calibration frame 700can comprise at least three radio-opaque markers 730 embedded in theperiphery of the calibration frame 700. In some embodiments, the atleast three radio-opaque markers 730 can be positioned asymmetricallyabout the periphery of the calibration frame 700 such that the software,as described herein, can sort the at least three radio-opaque markers730 based only on the geometric coordinates of each marker 730. In someembodiments, the calibration frame 700 can comprise at least one bank ofactive markers 720. In some embodiments, each bank of the at least onebank can comprise at least three active markers 720. In someembodiments, the at least one bank of active markers 720 can comprisefour banks of active markers 720. In yet another aspect, the calibrationframe 700 can comprise a plurality of leveling posts 77 coupled torespective corner regions of the calibration frame 700. In someembodiments, the corner regions of the calibration frame 700 can includeleveling posts 77 that can comprise radiolucent materials. In someembodiments, the plurality of leveling posts 77 can be configured topromote uniform, rigid contact between the calibration frame 700 and theskin of the patient 18. In some embodiments, a surgical-grade adhesivefilm, such as, for example and without limitation, Ioban™ from 3M™, canbe used to temporarily adhere the calibration frame 700 to the skin ofthe patient 18. 3M™ and Ioban™ are registered trademarks of 3M Company.In some further embodiments, the calibration frame 700 can comprise aplurality of upright posts 75 that are angled away from the frame 700(see FIG. 20B). In some embodiments, the plurality of active markers 720can be mounted on the plurality of upright posts 75.

As shown in FIG. 20B, in some embodiments, there are four radio-opaquemarkers 730 (non-metallic BBs from an air gun) embedded in the peripheryof the frame, labeled OP1, OP2, OP3, OP4. In some embodiments, onlythree markers 730 are needed for determining the orientation of a rigidbody in space (the 4th marker is there for added accuracy). In someembodiments, the radio-opaque markers 730 are placed in an asymmetricalconfiguration (notice how OP1 and OP2 are separated from each other bymore distance than OP3 and OP4, and OP1 and OP4 are aligned with eachother across the gap, however OP3 is positioned more toward the centerthan OP2). The reason for this arrangement is so that a computeralgorithm can automatically sort the markers to determine which is whichif only given the raw coordinates of the four markers and not theiridentification.

In some embodiments, there are four banks of active markers 720 (threemarkers 720 per bank). Only one bank of three markers 720 is needed(redundancy is for added accuracy and so that the system will still workif the surgeon, tools, or robot are blocking some of the markers. Insome embodiments, despite the horizontal orientation of the patient 18,the angulation of the upright posts can permit the active markers 720 toface toward the cameras or detection devices of the tracking system (forexample, the tracking system 3417). In some embodiments, the uprightposts can be angled away from the calibration frame by about 10°.

In some applications, to establish the spatial relationship between theactive 720 and radio-opaque markers 730, a conventional digitizingprobe, such as a 6-marker probe, embedded with active markers 720 in aknown relationship to the probe's tip (see for example FIG. 20C) can beused to point to each of the radio-opaque markers 730. In someembodiments, the probe can point to locations on two opposite surfacesof the spherical radio-opaque markers 730 while recording the positionof the probe tip and the active markers 720 on the frame 700simultaneously. Then, the average position of the two surfacecoordinates can be taken, corresponding to the center of the sphere. Animage of the robot 15 used with this targeting fixture 690 is shown inFIG. 20D. For placement of conventional surgical screws, a biopsy,injection, or other procedures, in some embodiments, the robot 15 canwork through the window formed by the frame 700. During a surgicalprocedure, in some embodiments, the working portal is kept on theinterior of the frame 700 and the markers 720 on the exterior of theframe 700 can improve accuracy over a system where fiducials are mountedaway from the area where surgery is being performed. Without wishing tobe bound by theory, simulation, and/or modeling, it is believed that areason for improved accuracy is that optimal accuracy of trackingmarkers 720 can be achieved if tracking markers 720 are placed aroundthe perimeter of the frame 700 being tracked.

Further embodiments of the invention are shown in FIG. 20E illustratinga calibration frame 700. This fixture 690 is simplified to make it lessobstructive to the surgeon. In some embodiments, the calibration frame700 can comprise four active markers 720 having a lower profile than theactive markers 720 described above and depicted in FIGS. 20A-20D. Forexample, the calibration frame 700 can comprise a plurality of uprightposts 75 that are angled away from the calibration frame by about 10°.In some embodiments, the active markers 720 are mounted on the posts 75that are angled back by 10°, and this angulation keeps the markers 720facing toward the cameras despite the patient being horizontal.

Moreover, in some embodiments, the front markers 720 can have lesschance of obscuring the rear markers 720. For example, posts 75 that arefarthest away from the camera or farthest from a detection device of thetracking system 3417 can be taller and spaced farther laterally than theposts 75 closest to the camera. In some further embodiments of theinvention, the calibration frame 700 can comprise markers 730 that areboth radio-opaque for detection by a medical imaging scanner, andvisible by the cameras or otherwise detectable by the real-time trackingsystem 3417. In some embodiments, the relationship between radio-opaque730 and active markers (730, 720) does not need to be measured orestablished because they are one in the same. Therefore, in someembodiments, as soon as the position is determined from the CT scan (orother imaging scan), the spatial relationship between the robot 15 andanatomy of the patient 18 can be defined.

In other embodiments, the targeting fixture 690 can comprise a flexibleroll configuration. In some embodiments, the targeting fixture 690 cancomprise three or more radio-opaque markers 730 that define a rigidouter frame and nine or more active markers 720 embedded in a flexibleroll of material (for example, the flexible roll 705 in FIG. 21A). Asdescribed earlier, radio-opaque markers 730 are visible on CT scansand/or other medical diagnostic images, such as MRI, or reconstructionsfrom O-arm or Iso-C scans, and their centroids can be determined fromthe 3D image. Active markers 720 include tracked markers 720 that have3D coordinates that are detectable in real-time using cameras or othermeans. Some embodiments can utilize active marker systems based onreflective optical systems such as Motion Analysis Inc., or PeakPerformance. Other suitable technologies include infrared-emittingmarker systems such as Optotrak, electromagnetic systems such asMedtronic's Axiem®, or Flock of Birds®, or a local positioning system(“LPS”) described by Smith et al. in U.S. Patent Publication No.2007/0238985. Flock Of Birds® is a registered trademark of AscensionTechnology Corporation. Axiem is a trademark of Medtronic, Inc., and itsaffiliated companies. Medtronic® is a registered trademark used forSurgical and Medical Apparatus, Appliances and Instruments.

In some embodiments of the invention, at least a portion of the flexibleroll 705 can comprise self-adhering film, such as, for example andwithout limitation, 3M™Ioban™ adhesive film (iodine-impregnatedtransparent surgical drape) similar to routinely used operating roomproduct model 6651 EZ (3M, St. Paul, Minn.). Ioban™ is a trademark of 3Mcompany. In some embodiments, within the flexible roll 705, theradio-opaque and active markers (730, 720) can be rigidly coupled toeach other, with each radio-opaque marker 730 coupled to three or moreactive markers 720. Alternatively, in some embodiments, the markers cansimultaneously serve as radio-opaque and active markers (for example, anactive marker 720 whose position can be detected from cameras or othersensors), and the position determined from the 3D medical image cansubstantially exactly correspond to the center of the marker 720. Insome embodiments, as few as three such markers 720 could be embedded inthe flexible roll 705 and still permit determination of the spatialrelationship between the robot 15 and the anatomy of the patient 18. Ifradio-opaque markers 730 and active markers 720 are not one in the same,in some embodiments the at least three active markers 720 must berigidly connected to each radio-opaque marker 730 because three separatenon-collinear points are needed to unambiguously define the relativepositions of points on a rigid body. That is, if only one or 2 activemarkers 720 are viewed, there is more than one possible calculatedposition where a rigidly coupled radio-opaque marker could be.

In some embodiments of the invention, other considerations can be usedto permit the use of two active markers 720 per radio-opaque marker 730.For example, in some embodiments, if two active markers 720 and oneradio-opaque marker 730 are intentionally positioned collinearly, withthe radio-opaque marker 730 exactly at the midpoint between the twoactive markers 720, the location of the radio-opaque marker 730 can bedetermined as the mean location of the two active markers 720.Alternatively, in some embodiments, if the two active markers 720 andthe radio-opaque marker 730 are intentionally positioned collinearly butwith the radio-opaque marker 730 closer to one active marker 720 thanthe other (see for example FIG. 21B), then in some embodiments, theradio-opaque marker 730 must be at one of two possible positions alongthe line in space formed by the two active markers 720 (see FIG. 21B).In this case, in some embodiments, if the flexible roll 705 isconfigured so that each pair of active markers 720 is oriented (when inits final position) with one marker 720 more toward the center of theflexible roll 705, then it can be determined from the orientations ofall markers or certain combinations of markers from different regionswhich of the two possible positions within each region is the correctposition for the radio-opaque marker 730 (see FIG. 21C showing flexibleroll 705 showed rolled on a torso and shown unrolled on a torso withmarkers 720, 730 in place). As shown, the radio-opaque markers 730 canbe positioned toward the inside of the frame 705), with marker groupsnearer to the top of the figure having the radio-opaque marker 730positioned below the active markers 720 and marker groups near thebottom of the figure having the radio-opaque marker positioned above theactive markers 720.

In some embodiments, the flexible roll 705 can be positioned across thepatient's back or other area, and adhered to the skin of the patient 18as it is unrolled. In some embodiments, knowing the spatial relationshipbetween each triad of active markers 720 and the rigidly coupledradio-opaque marker 730, it is possible to establish the relationshipbetween the robot 15 (position established by its own active markers720) and the anatomy (visualized together with radio-opaque markers 730on MRI, CT, or other 3D scan). In some embodiments, the flexible roll705 can be completely disposable. Alternatively, in some otherembodiments, the flexible roll 705 can comprise reusable marker groupsintegrated with a disposable roll with medical grade adhesive on eachside to adhere to the patient 18 and the marker groups 720, 730. In somefurther embodiments, the flexible roll 705 can comprise a drapeincorporated into the flexible roll 705 for covering the patient 18,with the drape configured to fold outwardly from the roll 705.

In some embodiments, after the roll 705 has been unrolled, the roll 705can have a desired stiffness such that the roll 705 does notsubstantially change its position relative to the bony anatomy of thepatient 18. In some embodiments of the invention, a conventionalradiolucent wire can be embedded in the perimeter of the frame 700. Insome embodiments, it a chain of plastic beads, such as the commerciallyavailable tripods shown in FIG. 21D, or a commercially available “snakelight” type fixture, can be employed to provide desired stiffness to theunrolled fixture such that it maintains its position after unrollingoccurs. For example, in some embodiments, the beads of the chain ofplastic beads as shown can be affixed to each other with a high frictionso that they hold their position once shifted. Further, in someembodiments, chains of beads can be incorporated into, and define, aperimeter of the frame 700. In some embodiments, this type of framecould be loaded with conventional chemicals that mix at the time ofapplication. For example, in some embodiments, components of aconventional two-part epoxy could be held in separate fragile baggieswithin the frame that pop open when the user first starts to manipulatethe beads. In some embodiments, the user would attach the frame to thepatient 18, and mold it to the contours of the patient's body. After ashort period of time, the frame 700 would solidify to form a very rigidframe, locking the beads in their current orientation.

In some embodiments of the invention, the targeting fixture 690 can bean adherable fixture, configured for temporary attachment to the skin ofa patient 18. For example, in some embodiments, the targeting fixture690 can be temporarily adhered to the patient 18 during imaging,removed, and then subsequently reattached during a follow-up medicalprocedure, such as a surgery. In some embodiments, the targeting fixture690 can be applied to the skull of a patient 18 for use in placement ofelectrodes for deep brain stimulation. In some embodiments, this methodcan use a single fixture 690, or two related fixtures. In this instance,the two related fixtures can share the same surface shape. However, onefixture 690 can be temporarily attached at the time of medical imagescanning, and can include radio-opaque markers 730 (but not activemarkers 720), and the second fixture 690 can be attached at the time ofsurgery, and can include active markers 720 (but not radio-opaquemarkers 730).

In some embodiments, the first fixture (for scanning) can comprise aframe 690 with three or more embedded radio-opaque markers 730, and twoor more openings 740 for application of markings (the markings shown as750 in FIG. 22B). In some embodiments, the device 690 can be adhered tothe scalp of a patient 18, and the openings 740 can be used to paintmarks on the scalp with, for example, henna or dye (shown as “+” marks750 in FIG. 22B). With this fixture 690 in place, in some embodiments,the patient 18 can receive a 3D scan (for example an MRI or CT scan) inwhich the radio-opaque markers 730 are captured. As illustrated by FIG.22B, in some embodiments, the fixture 690 can then be removed, leavingthe dye marks 750 on the scalp. In some embodiments, on a later date(before the dye marks 750 wear off), the patient 18 can return, and thesurgeon or technician can attach the 2nd fixture (for surgery)containing active markers 720 for intraoperative tracking (see FIG.22C-22D). In some embodiments, the fixture 690 shown in FIG. 22C can bemounted to the scalp, spatially positioned and oriented in the sameposition as the previously adhered first fixture (shown in FIG. 22A) byensuring that the previously placed dye marks 750 line up with holes inthe second fixture 690 (see the alignment arrows depicted in FIG. 22C).Optionally, in some embodiments, the fixture 690 can have a transparentframe for good visualization. The above-described method assumes thatthe locations of the marks 750 do not change over the period of timebetween the scan and the return of the patient 18 for surgery. Since therelative positions between the radio-opaque markers 730 from thetemporary (first) fixture 690 (which appear in the scan) and the activemarkers 720 on the second applied fixture 690 are known through acalibration and/or by careful manufacturing of the fixtures 690, thecoordinate system of the anatomy and the coordinate system of the activemarkers 720 can be synchronized so that the robot 15 can target anyplanned trajectory on the 3D image as described further herein. Further,in some embodiments, this method can enable image guidance with only onepre-op scan and without requiring the patient 18 to go home after apre-op scan. This circumvents the need for a patient 18 to take care ofwounds from targeting screws that are invasively drilled into the skullof the patient 18.

In some embodiments of the invention, the targeting fixture 690 cancomprise a conventional clamping mechanism for securely attaching thetargeting fixture 690 to the patient 18. For example, in someembodiments, the targeting fixture 690 can be configured to clamp to thespinous process 6301 of a patient 18 after the surgeon has surgicallyexposed the spinous process. FIG. 23 shows a dynamic tracking device2300 mounted to the spinous process 2310 in the lumbar spine of apatient 18 in accordance with some embodiments of the invention. Thistargeting fixture is used with Medtronic's StealthStation. This figureis reprinted from Bartolomei J, Henn J S, Lemole G M Jr., Lynch J,Dickman C A, Sonntag V K H, Application of frameless stereotaxy tospinal surgery, Barrow Quarterly 17(1), 35-43 (2001). StealthStation® isa trademark of Medtronic, Inc., and its affiliated companies.

In some embodiments, during use of a targeting fixture 690 having aconventional clamping mechanism with image guidance, the relationshipbetween the markers 720, 730 and the bony anatomy of the patient 18 canbe established using a registration process wherein known landmarks aretouched with a digitizing probe at the same time that the markers on thetracker are visible. In some embodiments of the invention, the probeitself can have a shaft protruding from a group of markers 720, 730,thereby permitting the tracking system 3417 to calculate the coordinatesof the probe tip relative to the markers 720, 730.

In some embodiments, the clamping mechanism of the targeting fixture 690can be configured for clamping to the spinous process 2310, or can beconfigured for anchoring to bone of the patient 18 such that the fixture690 is substantially stationary and not easily moved. In some furtherembodiments, the targeting fixture 690 can comprise at least threeactive markers 720 and distinct radio-opaque markers 730 that aredetected on the CT or other 3D image, preferably near the clamp (to beclose to bone). In some alternative embodiments, the active markers 720themselves must be configured to be visualized accurately on CT or other3D image. In certain embodiments, the portion of the fixture 690containing a radio-opaque marker 730 can be made to be detachable toenable removal from the fixture after the 3D image is obtained. In somefurther embodiments, a combination of radio-opaque 730 and activemarkers 720 can allow tracking with the robot 15 in the same way that ispossible with the frame-type targeting fixtures 690 described above.

In some embodiments, one aspect of the software and/or firmwaredisclosed herein is a unique process for locating the center of theabove-described markers 730 that takes advantage of the fact that a CTscan can comprise slices, typically spaced 1.5 mm or more apart in the zdirection, and sampled with about 0.3 mm resolution in the x-axis andy-axis directions. In some embodiments, since the diameter of theradio-opaque markers 730 is several times larger than this slicespacing, different z slices of the sphere will appear as circles ofdifferent diameters on each successive x-y planar slice. In someembodiments, since the diameter of the sphere is defined beforehand, thenecessary z position of the center of the sphere relative to the slicescan be calculated to provide the given set of circles of variousdiameters. Stated similarly, in some embodiments, a z slicesubstantially exactly through the center of the sphere can yield acircle with a radius R that is substantially the same as that of thesphere. In some embodiments, a z slice through a point at the top orbottom of the sphere can yield a circle with a radius R approximatingzero. In some other embodiments, a z slice through a z-axis coordinateZ1 between the center and top or bottom of the sphere can yield a circlewith a radius R1=R cos(arcsin(Z1/R)).

In some embodiments of the invention, the observed radii of circles on zslices of known inter-slice spacing can be analyzed using the equationdefined by R1=R cos(arcsin(Z1/R)). This provides a unique mathematicalsolution permitting the determination of the distance of each slice awayfrom the center of the sphere. In cases in which a sphere has a diametersmall enough that only a few slices through the sphere appear on amedical image, this process can provide a more precise the center of asphere.

Some embodiments of the use of the calibration frame 700 are describedto further clarify the methods of use. For example, some embodimentsinclude the steps of a conventional closed screw or conventional needle(for example, a biopsy needle 8110) insertion procedure utilizing acalibration frame 700 as follows. In some embodiments, a calibrationframe 700 is attached to the patient's 18 skin, substantially within theregion at which surgery/biopsy is to take place. In some embodiments,the patient 18 receives a CT scan either supine or prone, whicheverpositioning orients the calibration frame 700 upward. In someembodiments, the surgeon subsequently manipulates three planar views ofthe patient's 18 CT images with rotations and translations. In someembodiments, the surgeon then draws trajectories on the images thatdefine the desired position, and strike angle of the end-effectuator 30.In some embodiments, automatic calibration can be performed in order toobtain the centers of radio-opaque makers 730 of the calibration frame700, and to utilize the stored relationship between the active markers720 and radio-opaque markers 730. This procedure permits the robot 15 tomove in the coordinate system of the anatomy and/or drawn trajectories.

In some embodiments, the robot 15 then will move to the desiredposition. In some embodiments, if forceful resistance beyond a pre-settolerance is exceeded, the robot 15 will halt. In some furtherembodiments, the robot 15 can hold the guide tube 50 at the desiredposition and strike angle to allow the surgeon to insert a conventionalscrew or needle (for example, needle 7405, 7410 or biopsy needle 8110).In some embodiments, if tissues move in response to applied force or dueto breathing, the movement will be tracked by optical markers 720, andthe robot's position will automatically be adjusted.

As a further illustration of a procedure using an alternate guidancesystem, in some embodiments, the steps of an open screw insertionprocedure utilizing an optical guidance system is described. In someembodiments, after surgical exposure, a targeting fixture 690 comprisinga small tree of optical markers, for example, can be attached to a bonyprominence in the area of interest. In some embodiments, conventionalcalibration procedures for image guidance can be utilized to establishthe anatomy relative to the optical tracking system 3417 and medicalimages. For another example, the targeting fixture 690 can containrigidly mounted, substantially permanent or detachable radio-opaquemarkers 730 that can be imaged with a CT scan. In some embodiments, thecalibration procedures consistent with those stated for the calibrationframe 700 can be utilized to establish the anatomy relative to the robot15 and the medical image.

In some embodiments, the surgeon manipulates three planar views of thepatient's CT images with rotations and translations. In someembodiments, the surgeon then draws trajectories on the images thatdefine the desired position and strike angle of the end-effectuator 30.In some embodiments, the robot 15 moves to the desired position. In someembodiments, if forceful resistance beyond a pre-set tolerance isexceeded, the robot 15 will halt. In some embodiments, the robot 15holds the guide tube 50 at the desired position and strike angle toallow the surgeon to insert a conventional screw. In some embodiments,if tissues move in response to applied force or due to breathing, themovement will be tracked by optical markers 720, and the robot'sposition will automatically be adjusted.

Although several embodiments of the invention have been disclosed in theforegoing specification, it is understood that many modifications andother embodiments of the invention will come to mind to which theinvention pertains, having the benefit of the teaching presented in theforegoing description and associated drawings. It is thus understoodthat the invention is not limited to the specific embodiments disclosedhereinabove, and that many modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although specific terms are employed herein, as well as in theclaims which follow, they are used only in a generic and descriptivesense, and not for the purposes of limiting the described invention, northe claims which follow.

It will be appreciated by those skilled in the art that while theinvention has been described above in connection with particularembodiments and examples, the invention is not necessarily so limited,and that numerous other embodiments, examples, uses, modifications anddepartures from the embodiments, examples and uses are intended to beencompassed by the claims attached hereto. The entire disclosure of eachpatent and publication cited herein is incorporated by reference, as ifeach such patent or publication were individually incorporated byreference herein. Various features and advantages of the invention areset forth in the following claims.

What is claimed is:
 1. A method for calibrating to a medical image foruse with a medical robot system, the medical robot system comprising atargeting fixture comprising a plurality of radio-opaque markers, adisplay, a robot arm, an end-effector coupled to the robot arm andcontrolled by at least one motor, and a computer, said methodcomprising: receiving, via the computer of the medical robot system,data associated with the medical image representative of the pluralityof radio-opaque markers in an imaging coordinate system, wherein thedisplay is configured to show the imaging coordinate system;determining, via the computer, a geometrical center, in the imagingcoordinate system, associated with each of the radio-opaque markers;mapping, via the computer, each geometrical center to the associatedradio-opaque marker; and retaining in the computer, a center coordinatefor each geometrical center in the imaging coordinate system, whereincalibration of the targeting fixture to the imaging coordinate systemoccurs based upon the center coordinate for each geometrical center andwherein the center coordinate for each geometrical center is determinedby analyzing pixels that reach a predetermined value, and wherein atrajectory of the medical robot system relative to a patient iscontrolled based upon the calibration of the targeting fixture.
 2. Themethod of claim 1, wherein determining the geometrical center furthercomprises using image thresholding to define one or more edges of eachradio-opaque marker and each geometrical center.
 3. The method of claim2, wherein image thresholding includes displaying pixels that satisfy athresholding criterion at an intensity encountered at the edge of aradio-opaque marker to indicate a circular outline of each radio-opaquemarker on the medical image.
 4. The method of claim 3, whereindetermining a geometrical center includes determining a mean x thresholdposition of each geometrical center and determining a mean y thresholdposition of each geometrical center.
 5. The method of claim 3, whereindetermining a geometrical center includes determining a two-dimensional(2D) center for each geometrical center by examining a slice for each oftwo orthogonal view for the associated radio-opaque marker.
 6. Themethod of claim 1, further comprising: using a threshold setting fordetermining the geometrical center for each radio-opaque marker;adjusting the threshold setting upon a determination that one or moregeometrical centers cannot be identified.
 7. The method of claim 1,wherein the plurality of radio-opaque markers are disposed on acalibration fixture.
 8. The method of claim 7, wherein mapping comprisesimplementing a sorting process to establish each geometric center withthe associated radio-opaque marker, wherein the sorting process isconfigured to distinguish between the plurality of radio-opaque markersto establish each geometric center.
 9. The method of claim 8, whereinthe sorting process includes distinguishing a particular one of theradio-opaque markers from other radio-opaque markers by measuringinter-marker distances from mean positions of the plurality ofradio-opaque markers in the imaging coordinate system and comparing withretained pre-measured inter-marker distances of each of the plurality ofradio-opaque markers based on the calibration fixture.
 10. The method ofclaim 1, wherein the targeting fixture and each center coordinate isused to track the position of the robot in the imaging coordinatesystem.
 11. A method for calibrating a targeting fixture containing aplurality of radio-opaque markers to a medical image for use with asurgical robot, said method comprising: receiving data associated withthe medical image representative of the plurality of radio-opaquemarkers in an imaging coordinate system; determining a geometricalcenter, in the imaging coordinate system, associated with each of theradio-opaque markers; mapping each geometrical center to the associatedradio-opaque marker; and retaining in a computer of the surgical robot,a center coordinate for each geometrical center in the imagingcoordinate system, wherein the surgical robot comprises: the targetingfixture containing the plurality of radio-opaque markers; the computer;a display; and a housing, wherein the housing further comprises a robotarm and an end-effectuator, wherein calibration of the targeting fixtureto the imaging coordinate system occurs based upon the center coordinatefor each geometrical center and wherein the center coordinate for eachgeometrical center is determined by analyzing pixels that reach apredetermined value, and wherein a trajectory of the robot arm andend-effectuator relative to a patient is controlled based upon thecalibration of the targeting fixture.
 12. The method of claim 11,wherein determining the geometrical center further comprises using imagethresholding to define one or more edges of each radio-opaque marker andeach geometrical center.
 13. The method of claim 12, wherein imagethresholding includes displaying pixels that satisfy a thresholdingcriterion at an intensity encountered at the edge of a radio-opaquemarker to indicate a circular outline of each radio-opaque marker on themedical image.
 14. The method of claim 13, wherein determining ageometrical center includes determining a mean x threshold position ofeach geometrical center and determining a mean y threshold position ofeach geometrical center.
 15. The method of claim 13, wherein determininga geometrical center includes determining a two-dimensional (2D) centerfor each geometrical center by examining a slice for each of twoorthogonal view for the associated radio-opaque marker.
 16. The methodof claim 11, further comprising: using a threshold setting fordetermining the geometrical center for each radio-opaque marker;adjusting the threshold setting upon a determination that one or moregeometrical centers cannot be identified.
 17. The method of claim 11,wherein the plurality of radio-opaque markers are disposed on acalibration fixture.
 18. The method of claim 17, wherein mappingcomprises implementing a sorting process to establish each geometriccenter with the associated radio-opaque marker, wherein the sortingprocess is configured to distinguish between the plurality ofradio-opaque markers to establish each geometric center.
 19. The methodof claim 18, wherein the sorting process includes distinguishing aparticular one of the radio-opaque markers from other radio-opaquemarkers by measuring inter-marker distances from mean positions of theplurality of radio-opaque markers in the imaging coordinate system andcomparing with retained pre-measured inter-marker distances of each ofthe plurality of radio-opaque markers based on the calibration fixture.20. The method of claim 11, wherein each center coordinate is used totrack the position of the surgical robot in the imaging coordinatesystem.